Open
Description
<percentage>
is currently restricted to [0,100]
in stripes()
otherwise the function is invalid:
<color-stripe> = <color> && [ <length-percentage> | <flex> ]?
<percentage [0,100]>
: [...] Only values between0%
and100%
(inclusive) are valid.<length [0,∞]>
: [...] Negative length values are invalid.
I agree with #9516 (comment) that values outside this range are meaningless.
But then I am not sure why they make sense in <alpha-value>
or <brightness()>
(for example), which produce different animating behaviors (because <alpha-value>
is clamped at parse time).
However my main concern is <length-percentage>
expanding to <length [0,∞]> | <percentage [0,100]>
, which is not great for grammar driven parser, therefore I suggest this change:
- <color-stripe> = <color> && [ <length-percentage> | <flex> ]?
+ <color-stripe> = <color> && [ <length [0,∞]> | <percentage [0,100]> | <flex> ]?
Note that <length-percentage [0,]>
is not problematic because [0,]
can be "inherited" during expansion.