Open
Description
CSS Conditional 5 defines <size-feature>
as the same as <media-feature>
, and Conditional Values defines <atomic-condition>
as its own version of <media-feature>
.
Similarly as <boolean>
(or possibly <condition>
) unifies the syntaxes of a "complex" condition, would it be possible to unify <size-feature>
and <media-feature>
into <atomic-condition>
?
Or maybe <boolean>
should be <complex-condition>
and <atomic-condition>
should be <condition>
, similar to the selector terminology.
<condition> = <condition-boolean> | <condition-plain> | <condition-range>
<condition-boolean> = <condition-name> | <condition-constant-keyword>
<condition-name> = <ident>
<condition-plain> = <condition-name> : <condition-value>
<condition-range> = <condition-name> <comparison-operator> <numeric-value>
| <numeric-value> <comparison-operator> <condition-name>
| <numeric-value> <comparison-lt> <condition-name> <comparison-lt> <numeric-value>
| <numeric-value> <comparison-gt> <condition-name> <comparison-gt> <numeric-value>
<condition-value> = <ident> | <numeric-value>
<numeric-value> = <number> | <dimension> | <percentage> | <ratio>
<comparison-lt> = '<' '='?
<comparison-gt> = '>' '='?
<comparison-eq> = '='
<comparison-operator> = <comparison-lt> | <comparison-gt> | <comparison-eq>
With the following requirements:
- each specification must define the set of valid
<condition-name>
when using this production <condition-value>
must be a valid value according to<condition-name>
- whitespaces are invalid between any component value of
<comparison-operator>