I wish all the properties in CSS specs were categorized into layout-effecting, paint-affecting etc. in an explicit way, and this was used to solve at least some of the circularity issues, by allowing only paint-affecting properties in those complex cases.
2
5
Yes, this would reduce the possible use cases for those potential fixes, but this would also allow a lot more of the use-cases. And this kind of a limitation could be loosen when we’d come with more robust solutions to the circularity.
1
Obvious use case (and the most frustrating not to have in CSS) — `position: sticky` and the absence of the pseudo-class which you could use to set the styles for the stuck state to be different from the unstuck. This is a case where in 99% cases paint-only props would be enough.
1
2
In most cases for the :stuck which I had during my experience you could use just shadows/backgrounds/visibility/opacity/transforms to achieve most of the things you’d want to achieve.
1
1
Yep, also first-letter, first-line (which already had some circularity issues!), and we probably forget about some other stuff.
1
2
I think the thing you're proposing would require that selector matching (which is expensive) happen in multiple passes, and then cascading (also somewhat expensive) happen again after each pass to resort the resulting results.

Mar 22, 2019 · 4:24 PM UTC

2
Though, somewhat related, the working group has attempted to document property computed value dependencies at wiki.csswg.org/spec/property…
1
Is there a text written anywhere describing why exactly, with explanations how expensive it would really be? I bet grids are more expensive, filters too, but we have them. Making this not an edge case, but a native CSS behaviour would allow for optimisations as well.