~alcinnz/haskell-stylist

ref: 90cf1ea6e0d277a6dd30cc5f9599d43984068cc5 haskell-stylist/ISSUES/psuedoclass-lowering.md -rw-r--r-- 839 bytes
90cf1ea6 — Adrian Cochrane Substitute in counters for any CSS textual property, not just `content`. 4 years ago

#Provide API to lower non-functional psuedoclasses

It may be simpler, though less featureful[1], to implement interactive psuedoclasses as if they were psuedoelements. That way when the style tree has been interacted, we can retrieve the altered styles rather than reapply the full stylesheet.

Many other psuedoclasses are equivalent to other selectors, especially if the caller doesn't implement certain interactions.

As such there should be a StyleSheet decorator that can be configure to perform these tasks.

#Notes

  1. Rewriting psuedoclasses to psuedoelements would not allow a browser to support selectors like ":hover li" that are popularly used to create offline-interactive pages without JavaScript.

However it is probably wise to discourage such patterns, as they do not communicate necessary state to accessibility tools.