Re: [css3-syntax][css3-cascade] Conflicting definitions of !important

Le 14/12/2012 18:23, Tab Atkins Jr. a écrit :
> On Fri, Dec 14, 2012 at 6:21 AM, Simon Sapin <simon.sapin@kozea.fr> wrote:
>> Hi,
>>
>> We currently have two definitions for the syntax of !important (not counting
>> CSS 2.1 which is superseded by corresponding level 3 modules.)
>>
>> css3-syntax, section 3.5.9:
>> Declaration-important mode (reached after ! in a declaration value)
>>
>>> whitespace token
>>> comment token
>>>      Do nothing. Remain in this mode.
>>> ident token with a value of "important"
>>>      If the current declaration is one that can be made important,
>>>      set the important flag of the current declaration to true,
>>>      and switch to the declaration-end mode.
>>
>>
>>
>> css3-cascade, section 4.2.2:
>>
>>> A declaration is "!important" if the last two tokens in its value are
>>> the delimiter token ‘!’ followed by the identifier token
>>> ‘important’.
>>
>>
>>
>> As you can see, the former definition allows whitespace and comments between
>> ! and important, while the latter does not. I don’t care what the exact
>> syntax is, but it should be defined no less and no more than once.
>>
>> I suggest that either:
>>
>> 1. css3-cascade refers to css3-syntax for this.
>> 2. css3-syntax removes anything related to !important, which is becomes part
>> of the declaration’s "value". css3-cascade defines exactly how !important is
>> separated from the rest of the value.
>>
>> I prefer 1 as syntax belongs in the Syntax module, but 2 would work too.
>
> Cascade defining that is a bug, leftover from the older version.  We'll fix.

This still needs fixing :)

Cheers,
-- 
Simon Sapin

Received on Sunday, 9 June 2013 04:29:55 UTC