The ::view-transition-new
CSS pseudo-element represents the "new" view state of a view transition — a snapshot live representation of the state after the transition.
During a view transition, ::view-transition-new
is included in the associated pseudo-element tree as explained in The view transition pseudo-element tree. It is only ever a child of a ::view-transition-image-pair
, and never has any children.
It is a replaced element and therefore can be manipulated with properties such as object-fit
and object-position
. It has natural dimensions equal to the content's size.
The following default styling is included in the UA stylesheet:
:root::view-transition-old(*), :root::view-transition-new(*) { position: absolute; inset-block-start: 0; inline-size: 100%; block-size: auto; animation-duration: inherit; animation-fill-mode: inherit; animation-delay: inherit; } /* Keyframes for blending when there are 2 images */ @keyframes -ua-mix-blend-mode-plus-lighter { from { mix-blend-mode: plus-lighter; } to { mix-blend-mode: plus-lighter; } } @keyframes -ua-view-transition-fade-in { from { opacity: 0; } }
Note: Additional view transition styles are also setup to animate ::view-transition-new
. These are dynamically generated during the view transition; see the specification setup transition pseudo-elements and update pseudo-element styles sections for more details.