Re: [csswg-drafts] [css-conditional-5] Match scroll-state(scrollable) for root element on viewport (#11542)

The CSS Working Group just discussed `[css-conditional-5] Match scroll-state(scrollable) for root element on viewport`, and agreed to the following:

* `RESOLVED: Scroll state queries against the root match the scroll state of the layout viewport`
* `RESOLVED: Scroll state containment on root element blocks overflow/scroll-related propagation from the BODY element`

<details><summary>The full IRC log of that discussion</summary>
&lt;emilio> futhark: for scrollable feature, which queries whether something is scrollable in that direction<br>
&lt;emilio> ... so wanted to clarify that if the root element is a scroll-state container we should evaluate the scroll state against the viewport<br>
&lt;flackr> q+<br>
&lt;emilio> ... similar to scroll-snap-type<br>
&lt;emilio> q+<br>
&lt;emilio> futhark: I thought this was straight-forward but tab/miriam had some comments, where they want to fall back to the viewport<br>
&lt;emilio> ... basically if you set the scroll-state in the root it stops ??<br>
&lt;emilio> ... also if you contain scroll state queries with style queries we don't have a definition for them on the viewport<br>
&lt;astearns> ack flackr<br>
&lt;emilio> ... TabAtkins and miriam are not around, maybe fantasai does have opinions?<br>
&lt;emilio> q+ later<br>
&lt;emilio> flackr: just to clarify, we want the layout viewport right?<br>
&lt;fantasai> +1<br>
&lt;emilio> ... as it shouldn't change when you pinch-zoom<br>
&lt;emilio> +1<br>
&lt;emilio> futhark: good question, I think so<br>
&lt;astearns> ack emilio<br>
&lt;emilio> flackr: I think from the issue we have a lot of precedent for the root element representing the layout viewport<br>
&lt;emilio> ... overscroll-behavior and so on<br>
&lt;emilio> ... I think resolving that we handle this if you make the root a scroll container makes sense<br>
&lt;astearns> ack fantasai<br>
&lt;emilio> futhark: makes sense, we also have the same proposal of falling back to the viewport for size queries<br>
&lt;emilio> fantasai: making the root work this way makes sense. Having viewport just work seems it'd be a separate thing and more work probably<br>
&lt;emilio> ... in the meantime we can make this work<br>
&lt;astearns> ack emilio<br>
&lt;fantasai> emilio: Makes sense. one of the tricky things wrt making viewport just work is that root element is inside the viewport, but can technically affect it, so wouldn't that be cyclic?<br>
&lt;fantasai> emilio: brings me to my next point, which is, if you make root a scroll container<br>
&lt;fantasai> emilio: scroll-state container<br>
&lt;fantasai> emilio: we should not propagate overflow from the body, because that would be cyclic<br>
&lt;fantasai> emilio: by default we do that<br>
&lt;flackr> q+<br>
&lt;emilio> futhark: this has been resolved, for size queries we don't propagate across containers<br>
&lt;emilio> ... we don't propagate from body to viewport if root is a size container<br>
&lt;emilio> ... you were mentioning cyclic problems<br>
&lt;flackr> q-<br>
&lt;emilio> ... even if the scroll state query matches the viewport you wouldn't be able to match it, you could only style the viewport<br>
&lt;astearns> ack fantasai<br>
&lt;emilio> ... the spec says something about size queries, we might need something to be added for scroll queries<br>
&lt;emilio> fantasai: right, you'd be querying the scrollport of the viewport but the root would be conceptually the container<br>
&lt;flackr> +1<br>
&lt;emilio> +1, matches my understanding :)<br>
&lt;emilio> ... I think there's several things to resolve...<br>
&lt;emilio> ... scroll state queries against the root match the viewport<br>
&lt;emilio> ... the layout viewport<br>
&lt;emilio> ... this type of containment blocks scroll propagation from the body<br>
&lt;fantasai> emilio: That matches my understanding as well<br>
&lt;fantasai> PROPOSED: Scroll state queries against the root match the scroll state of the layout viewport<br>
&lt;emilio> +1<br>
&lt;flackr> +1<br>
&lt;fantasai> RESOLVED: Scroll state queries against the root match the scroll state of the layout viewport<br>
&lt;fantasai> PROPOSED: Scroll state containment on root element blocks overflow/scroll-related propagation from the BODY element<br>
&lt;flackr> +1<br>
&lt;emilio> +1<br>
&lt;fantasai> RESOLVED: Scroll state containment on root element blocks overflow/scroll-related propagation from the BODY element<br>
&lt;iank_> https://github.com/w3c/csswg-drafts/issues/12053<br>
</details>


-- 
GitHub Notification of comment by css-meeting-bot
Please view or discuss this issue at https://github.com/w3c/csswg-drafts/issues/11542#issuecomment-2917008890 using your GitHub account


-- 
Sent via github-notify-ml as configured in https://github.com/w3c/github-notify-ml-config

Received on Wednesday, 28 May 2025 16:55:08 UTC