- From: Oriol Brufau via GitHub <sysbot+gh@w3.org>
- Date: Thu, 30 Jan 2025 16:48:34 +0000
- To: public-css-archive@w3.org
Loirooriol has just created a new issue for https://github.com/w3c/csswg-drafts: == [css-transitions] The effect of `transition-behavior` also depends on the values attempting transition, not just the properties == https://drafts.csswg.org/css-transitions-2/#transition-behavior-property > When `normal` is specified, transitions will not be started for discrete properties, only for interpolable properties. When allow-discrete is specified, transitions will be started for discrete properties as well as interpolable properties. But `transition-behavior` doesn't just affect properties with a discrete animation type. The effect depends on the values that attempt transition. For example, [`width`](https://drafts.csswg.org/css-sizing-3/#propdef-width) has a "by computed value" animation type, but some values aren't interpolable so they fall back to discrete. Then `transition-behavior` comes into play: ```html <!DOCTYPE html> <style> #a, #b { width: min-content; transition: width 3s -1s linear; } </style> <div id="a" style="transition-behavior: normal"></div> <div id="b" style="transition-behavior: allow-discrete"></div> <pre id="pre"></pre> <script> document.addEventListener("transitionstart", (e) => { pre.append("transitionstart on #" + e.target.id + "\n"); }) document.body.offsetLeft; a.style.width = b.style.width = "100px"; pre.append("#a has width: " + getComputedStyle(a).width + "\n"); pre.append("#b has width: " + getComputedStyle(b).width + "\n"); </script> ``` Gecko, Blink and Webkit produce ``` #a has width: 100px #b has width: 0px transitionstart on #b ``` Given the text in the spec, since `width` is not a discrete property, it may seem that a transition would start even with `transition-behavior: normal`. But it's not the case for the values used above. Please view or discuss this issue at https://github.com/w3c/csswg-drafts/issues/11612 using your GitHub account -- Sent via github-notify-ml as configured in https://github.com/w3c/github-notify-ml-config
Received on Thursday, 30 January 2025 16:48:37 UTC