[csswg-drafts] [css-conditional-?][css-values-5] @supports should not use argument grammar (#13004)

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

== [css-conditional-?][css-values-5] @supports should not use argument grammar ==
(Originally reported by @bramus elsewhere.)

The [argument grammar](https://drafts.csswg.org/css-values-5/#argument-grammar) of a function is its "basic shape" that determines whether or not it's considered valid during parsing. For example, `color: if(potato(yes):green)` is valid parse time, even when `potato()` is not a supported if-test. 

Currently, `@supports (color: if(potato(yes):green)) {}` just checks whether or not the declaration would _parse as normal_, incorrectly suggesting that `potato()` is a supported if-test.

We should probably say that `@supports` checks the standard grammar instead, though we need to ensure that "var()-in-var()" cases are still reported as true, e.g.: `@supports (color: if(var(--my-test):green)) {}`.

See also #7280, where we decided that selectors should not be forgiving for `@supports`.

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


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

Received on Wednesday, 22 October 2025 21:35:03 UTC