Re: [csswg-drafts] [css-view-transitions-1] Should isolation and plus-lighter blending be applied conditionally (#7814)

Summary for CSSWG:

We use `mix-blend-mode: plus-lighter` on the old & new views, plus `isolation: isolate` on the image-pair, in order to create a true cross-fade.

Isolation isn't free performance-wise.

Some transition groups only have an old view, or only new view. This happens when an element with a particular `view-transition-name` only exists on one side of the transition. Isolation is unnecessary in these cases.

## Option 1: Apply isolation & blend mode styles only when both old & new views are present

This would be observable in `getComputedStyle`.

It would also result in a different rendering if the developer gives the image-pair a background color, since some contents will plus-lighter blend with that background, and others wouldn't. However, if you set a background on the image-pair, it like that you'd want to set blending to normal anyway.

We already apply lots of styles dynamically in a view transition, such as width, height, transform etc of transition groups.

## Option 2: Optimise internally for cases where isolation and blending is unnecessary

`getComputedStyle` would still see isolation and plus-lighter, but the rendering engine would avoid rendering to another buffer in cases where doing so would have no visual effect.

It's unclear how tricky this would be.

-- 
GitHub Notification of comment by jakearchibald
Please view or discuss this issue at https://github.com/w3c/csswg-drafts/issues/7814#issuecomment-1469957527 using your GitHub account


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

Received on Wednesday, 15 March 2023 12:55:37 UTC