- From: CSS Meeting Bot via GitHub <noreply@w3.org>
- Date: Thu, 29 Jan 2026 19:46:42 +0000
- To: public-css-archive@w3.org
The CSS Working Group just discussed `[css-view-transitions-2] Allow targeting of the root having an active view-transition of any type`, and agreed to the following:
* `RESOLVED: Allow "*" as the parameter for active-view-transition-type, meaning "any type"`
<details><summary>The full IRC log of that discussion</summary>
<dholbert> bramus: there's a css pseudoclass to allow you to target the root when a specific type is given, if you're using VT with types<br>
<dholbert> a type could be "forwards" or "backwards"<br>
<dholbert> and you might want to have animations that match that sort of type<br>
<dholbert> bramus: right now it's a functional selector, takes an arg with the type<br>
<dholbert> right now the arg always needs to be one of the types that you specified<br>
<dholbert> I had a use-case but I didn't list it... handy to know if "i don't care which type, I just want to know if there is a type set on the VT or not"<br>
<dholbert> this is in-line with highlight pseudo-selector, highlight(*) and vt group selector for any group with *<br>
<emilio> q+<br>
<dholbert> this would be useful to provide some default VT styles when going from page to page<br>
<dholbert> and then let the author special-case the types<br>
<dholbert> so html:active-vt(*) { default styles}<br>
<astearns> ack emilio<br>
<dholbert> and then light-dark, and a particular type, give some extra styles<br>
<dholbert> emilio: maybe we could do active-view-transition-type(none<br>
<dholbert> emilio: that might be usable right now?<br>
<dholbert> bramus: but you gave it a type in that case<br>
<dholbert> emilio: but none is a special keyword<br>
<dholbert> bramus: you really want "all/any" here<br>
<dholbert> emilio: ok<br>
<dholbert> emilio: seems fine, if it's useful<br>
<dholbert> fantasai: remind me how the types relate to the pseudo-elements?<br>
<dholbert> emilio: they don't<br>
<dholbert> bramus: the types get set on the element where you triggered the VT<br>
<vmpstr> q+<br>
<dholbert> bramus: you can then select the root with that specific type, :root:active-view-transition-type(<type>)<br>
<dholbert> fantasai: we had a whole :element ... do those accept a type<br>
<dholbert> bramus: you use the selector on the root<br>
<dholbert> and then you nest your other selectors inside of that<br>
<astearns> ack vmpstr<br>
<dholbert> vmpstr: we have the active-view-transition class that applies whenever there's a VT running, regardless of types<br>
<dholbert> vmpstr: is that insufficient for this use-case?<br>
<dholbert> bramus: correct<br>
<dholbert> astearns: why insufficient?<br>
<dholbert> bramus: if you just use that selector, you might have a totally different type of VT going on. Regular page navigation going from one page to another, maybe you want the default cross-fade<br>
<dholbert> bramus: but for specific animations e.g. to details-page, or page 5 to 6 or 5 to 4, you want the stuff to slide around left-to-right<br>
<dholbert> vmpstr: wouldn't the cascade do that? specify defaults with active-view-transition, and then specify same property with different value on the type<br>
<dholbert> emilio: this proposal lets you distinguish no-type from any-type<br>
<dholbert> vmpstr: but is there a distinction here? what I described before is the way I would do this today. specify general styles for all transitions, and then more specific rule for page-4-to-page-5<br>
<dholbert> vmpstr: this is less powerful than being able to select for specifically no types, of course<br>
<dholbert> vmpstr: the only place this breaks down is if you're specifying a different property<br>
<dholbert> bramus: maybe if you have VT on root element -- you get a cross-fade<br>
<dholbert> bramus: and then you start using types, and you select for name=none on the root, and then for all my types that I use, I undo the view-transition-name root one<br>
<dholbert> bramus: that would benefit here<br>
<dholbert> vmpstr: that's fair. so this is for the "all" use-case, not so much "none"<br>
<dholbert> astearns: so we have 3 syntactic proposals. asterisk, keyword, and no-parameter version of active-view-transition-type<br>
<dholbert> fantasai: and no-param would mean?<br>
<dholbert> bramus: "any"<br>
<dholbert> astearns: all of these options would mean "any"<br>
<dholbert> and you could negate it to mean "none"<br>
<dholbert> astearns: I have a concern with keyword because it might clash with type names<br>
<dholbert> bramus: in all code examples we're giving to authors, asterisk already comes up a lot. It's in functional pseudo selector. Reusing it here makes sense as "any"<br>
<vmpstr> +1<br>
<dholbert> fantasai: yeah. we're already using it in the context of VT<br>
<dholbert> astearns: proposed resolution: Allow "*" as the parameter for active-view-transition-type, meaning "any type"?<br>
<dholbert> RESOLVED: Allow "*" as the parameter for active-view-transition-type, meaning "any type"<br>
</details>
--
GitHub Notification of comment by css-meeting-bot
Please view or discuss this issue at https://github.com/w3c/csswg-drafts/issues/11152#issuecomment-3819915770 using your GitHub account
--
Sent via github-notify-ml as configured in https://github.com/w3c/github-notify-ml-config
Received on Thursday, 29 January 2026 19:46:43 UTC