[csswg-drafts] [css-values] toggle() for shorthands is not forward compatible (#6764)

Loirooriol has just created a new issue for https://github.com/w3c/csswg-drafts:

== [css-values] toggle() for shorthands is not forward compatible ==
https://drafts.csswg.org/css-values/#funcdef-toggle

> If toggle() is used on a shorthand property, it sets each of its longhands to a toggle() value with arguments corresponding to what the longhand would have received had each of the original toggle() arguments been the sole value of the shorthand.

Let's consider `display: toggle(block, flex, inline)`.

Right now, `display` is a longhand property, so we have:

 - `block flow` -> `block flex`
 - `block flex` -> `inline flow`
 - anything else -> `block flow`

But it seems likely that we will want to convert `display` into a shorthand. Then, the example will become

```css
display-outside: toggle(block, block, inline);
display-inside: toggle(flow, flex, flow);
```

Due to short-circuiting, that's equivalent to

```css
display-outside: block;
display-inside: toggle(flow, flex);
```

Which behaves like

 - `block flow` -> `block flex`
 - anything else -> `block flow`

Please view or discuss this issue at https://github.com/w3c/csswg-drafts/issues/6764 using your GitHub account


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

Received on Tuesday, 26 October 2021 01:09:52 UTC