Re: [csswg-drafts] [css-view-transitions-1] Enforce ::view-transition to be fixed position (#8505)

The CSS Working Group just discussed `[css-view-transitions-1] Enforce ::view-transition to be fixed position`, and agreed to the following:

* `RESOLVED: Define "snapshot CB" as the current snapshot root rect, give it ICB behaviors so it captures all elements (preventing them from going higher)`

<details><summary>The full IRC log of that discussion</summary>
&lt;TabAtkins> (vlad and khush are beign eaten by the AI)<br>
&lt;TabAtkins> vmpstr: We currently have a ::view-transition pseudo, the root of the whole VT pseudo-tree.<br>
&lt;TabAtkins> vmpstr: It has fixpos, and uses snapshot root as the contining block<br>
&lt;TabAtkins> vmpstr: We'd like to make fixpos unchangeable, via UA !important<br>
&lt;TabAtkins> vmpstr: Because we want the root pseudo to be a containing block to all other pseudos<br>
&lt;emilio> q+<br>
&lt;TabAtkins> vmpstr: If we don't have that, and author can change it, we'd have to figure out what the VT pseudos *should* use. Haven't found any use-case for it, so propose to enforce it<br>
&lt;astearns> ack emeyer<br>
&lt;astearns> ack emilio<br>
&lt;TabAtkins> emilio: I think it's fine, but do you also want to ensure you're a containing block for other fixpos children?<br>
&lt;TabAtkins> vmpstr: Does fixpos not contain fixpos?<br>
&lt;TabAtkins> TabAtkins: No<br>
&lt;TabAtkins> vmpstr: Okay then we'd also like it to be a fixpos containing block for its descendants.<br>
&lt;TabAtkins> emilio: Okay can do that in a few ways, or with magic. Like a no-op filter.<br>
&lt;TabAtkins> emeyer: Maybe just say it happens.<br>
&lt;TabAtkins> s/emeyer/emilio/<br>
&lt;TabAtkins> vmpstr: I'd say UA magic is fine, the structure of the tree is also unchangeable<br>
&lt;astearns> ack fantasai<br>
&lt;TabAtkins> fantasai: Would it make sense, instead, to define that the VT tree is contained by the snapshot root?<br>
&lt;TabAtkins> fantasai: In the same way the rest of the doc is contained by the ICB?<br>
&lt;TabAtkins> fantasai: LIke, you can't position anything based on higher than the ICB, we can say the same for the snapshot root for VT pseudos<br>
&lt;TabAtkins> fantasai: So if you change the position of VT, it'll still be laid out in the snapshot root, and children will still use the snapshot root as well, as normal<br>
&lt;TabAtkins> fantasai: So it basically lives in its own layout tree<br>
&lt;TabAtkins> vmpstr: I think.... that's fine. We basically just want to avoid going to the ICB in some cases<br>
&lt;TabAtkins> vmpstr: But as long as the CB chain stops at the snapshot root, that's fine<br>
&lt;TabAtkins> fantasai: Taht's my suggestion then, I might call it the "snapshot containing block" and define it similarly to ICB (capturing abspos, fixpos, etc)<br>
&lt;TabAtkins> astearns: Then we're not saying anything particular about the position value for the top VT pseudo?<br>
&lt;TabAtkins> fantasai: Right<br>
&lt;TabAtkins> fantasai: If you position:static, it'll be laid out as a block inside the snapshot CB<br>
&lt;TabAtkins> astearns: So proposed res is we define "snapshot containing block" for the VT pseudo-els, to get the effect we're looking for in this issue.<br>
&lt;TabAtkins> vmpstr: Defining it to be the snapshot root<br>
&lt;TabAtkins> fantasai: Yeah, rename "snapshot root" to snapshot CB and clarify it behaves as the ICB.<br>
&lt;TabAtkins> +<br>
&lt;TabAtkins> +1<br>
&lt;TabAtkins> astearns: Objections?<br>
&lt;TabAtkins> khush: Right now spec defines snapshot root to be "the rect that the viewport would be if all retractable UI is hidden"<br>
&lt;emeyer> TabAtkins: Containing block is already a rectangle<br>
&lt;emeyer> …You can literally say this is the CB<br>
&lt;TabAtkins> khush: So when we snapshot the root, we'll capture that rect as the snapshot CB<br>
&lt;TabAtkins> RESOLVED: Define "snapshot CB" as the current snapshot root rect, give it ICB behaviors so it captures all elements (preventing them from going higher)<br>
</details>


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


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

Received on Wednesday, 12 April 2023 16:36:44 UTC