Intent to Prototype: Nested view transitions

54 views
Skip to first unread message

Noam Rosenthal

unread,
3:53 AM (9 hours ago) 3:53 AM
to blink-dev

Contact emails

nrose...@chromium.orgvmp...@chromium.orgkhusha...@chromium.org

Explainer

https://github.com/WICG/view-transitions/blob/main/nested-explainer.md#nested-view-transitiions

Specification

https://www.w3.org/TR/css-view-transitions-2

Summary

Allow view-transitions to generate a nested pseudo-element tree rather than a flat one. This allows the view transition to appear more in line with its original elements and visual intent, as it enables clipping, nested 3D transforms, and proper application of effects like opacity, masking and filters.



Blink component

Blink>CSS

Motivation

Flat-tree view transitions, as available today, are limited: they don't work correctly and don't provide the full set of expression features with regards to clipping, 3D transforms, masking and filter effects, as those work differently on a flat tree and on a hierarchical tree. By representing the captured elements by a nested tree we let authors apply those CSS features correctly on the view transition pseudo-elements, resulting in view transitions that are both more visually correct and contain the entire set of CSS visual expressions.



Initial public proposal

https://github.com/w3c/csswg-drafts/issues/10334

TAG review

None

TAG review status

Pending

Risks



Interoperability and Compatibility

None



Gecko: No signal

WebKit: No signal

Web developers: No signals

Other signals: was requested by web developers (see https://github.com/w3c/csswg-drafts/issues/8821#issuecomment-1899132007 from Airbnb)

WebView application risks

Does this intent deprecate or change behavior of existing APIs, such that it has potentially high risk for Android WebView-based applications?

None



Debuggability

None



Is this feature fully tested by web-platform-tests?

Yes (once prototyped)

Flag name on chrome://flags

NestedViewTransition

Finch feature name

NestedViewTransition

Non-finch justification

None

Requires code in //chrome?

False

Estimated milestones

No milestones specified



Link to entry on the Chrome Platform Status

https://chromestatus.com/feature/5162799714795520?gate=5133405763928064

This intent message was generated by Chrome Platform Status.
Reply all
Reply to author
Forward
0 new messages