- From: Brandon McConnell via GitHub <sysbot+gh@w3.org>
- Date: Fri, 19 Jul 2024 04:46:12 +0000
- To: public-css-archive@w3.org
> To be more productive, then, my suggestion for the syntax is: > > ``` > if( [<<if-cond>> ':' <<decl-value>> ]# ) > <if-cond> = <<boolean>> | else > ``` > > With the condition that `else` is only valid in the final pair. (And if there's no `else` and all the conditions fail, the value is IACVT.) @tabatkins If we settle on the `if( [<<if-cond>> ':' <<decl-value>> ]# )` grammar, how would values that contain commas be handled? Would the parser not consider a comma `,` the statement terminator unless preceding a value followed by a colon `:`? Consider this example: ```postcss * { --val: if(media(width > 200px): media(width > 100px), media(width > 50px), media(width > 10px): 10px), } ``` While it may be a bit convoluted, this would be the expected condition-result map, as I see it: | Condition | Result | Result type | |--------|--------|--------| | `media(width > 200px)` | `media(width > 100px)` | `"<boolean>"` (re #10593) | | `media(width > 50px)` | `10px` | `"<length>"` | | (omitted `else`) | | IACVT | -- GitHub Notification of comment by brandonmcconnell Please view or discuss this issue at https://github.com/w3c/csswg-drafts/issues/10064#issuecomment-2238150993 using your GitHub account -- Sent via github-notify-ml as configured in https://github.com/w3c/github-notify-ml-config
Received on Friday, 19 July 2024 04:46:13 UTC