Re: [css-variables] Is making a property negative via `-var(--width)` valid syntax?

On Mon, Nov 9, 2015 at 8:37 AM, Boris Zbarsky <bzbarsky@mit.edu> wrote:
> On 11/8/15 1:51 PM, Philip Walton wrote:
>>
>> If I try doing the same thing with custom properties in Firefox is
>> fails. I'm assuming that's a bug, but I wanted to ask here to make sure.
>
>
> The Firefox behavior seems correct to me per spec at first glance, though
> the spec could be clearer about this for sure.  The issue you're running
> into is var() substitutes a sequence of tokens, not a string to be
> retokenized.  This is the part that could be spelled out more clearly.
>
>> .parent {
>>    --gutter: 1em;
>>    margin: -var(--gutter); /* declaration ignored in FF */
>
>
> So the value of the custom property in this case is the sequence of tokens
> [1em].
>
> The value of 'margin' is then the sequence of tokens ['-', 1em] which is not
> the same thing as the single token [-1em].
>
> See also example 11 at
> https://drafts.csswg.org/css-variables/#example-3ab19e31 (as of today; I
> wish I could perma-link editor's draft versions), which is pretty much
> exactly your situation, right?

I think in this specific case, the declaration is dropped even
earlier. The parser should consider the whole "-var" as an unknown
token.

- Xidorn

Received on Sunday, 8 November 2015 22:32:04 UTC