demo · v140

Element-scoped VT

Click each card to flip its swatch. Card A uses card.startViewTransition() — only its subtree is captured. Card B uses the global document.startViewTransition() — the whole page freezes during animation. Notice the difference if you mash both buttons.

Card A

Card B

// v140: scope to a single element subtree
card.startViewTransition({ update() { mutateInside(card); } });
// vs the document-wide path
document.startViewTransition({ update() { mutateInside(card); } });

see also