W3C home > Mailing lists > Public > www-style@w3.org > December 2012

Re: [css3-conditional] @supports "not(" without space

From: Tab Atkins Jr. <jackalmage@gmail.com>
Date: Wed, 5 Dec 2012 09:28:02 -0800
Message-ID: <CAAWBYDBzuo1CxBz=3Brwam-b2o=gWpAYmM8=Pc0pFjRbkfHXxQ@mail.gmail.com>
To: Simon Pieters <simonp@opera.com>
Cc: "www-style@w3.org" <www-style@w3.org>
On Wed, Dec 5, 2012 at 6:20 AM, Simon Pieters <simonp@opera.com> wrote:
> Hi,
>
> Are these two supposed to be equivalent?
>
> @supports (not (foo: bar)) { }
> @supports (not(foo: bar)) { }
>
> heycam says[1] that not( is tokenized into a FUNCTION and thus
> general_enclosed will match instead of supports_negation.
>
> supports_negation's grammar has S* rather than S (I think it was S in an
> earlier version?), suggesting that one should be able to omit the space.
>
> To me, this smells like a spec bug. If the space is supposed to be optional,
> it should parse into supports_negation when the space is absent. If not, the
> grammar for supports_negation should say S instead of S*.
>
> [1] https://bugzilla.mozilla.org/show_bug.cgi?id=816045#c10

The space *is* technically optional.  heycam is right that "not("
always parses into a FUNCTION token, but "not/**/(" parses into IDENT
(.

~TJ
Received on Wednesday, 5 December 2012 17:28:52 GMT

This archive was generated by hypermail 2.3.1 : Tuesday, 26 March 2013 17:21:03 GMT