W3C home > Mailing lists > Public > public-css-testsuite@w3.org > November 2010

Re: invalid comments among declaration blocks

From: L. David Baron <dbaron@dbaron.org>
Date: Thu, 11 Nov 2010 20:10:40 -0800
To: Bjoern Hoehrmann <derhoermi@gmx.net>
Cc: Alan Gresley <alan@css-class.com>, CSS-testsuite <public-css-testsuite@w3.org>
Message-ID: <20101112041040.GA463@pickering.dbaron.org>
On Friday 2010-11-12 04:17 +0100, Bjoern Hoehrmann wrote:
> * Alan Gresley wrote:
> >Hello all,
> >
> >What should happen here?
> 
> >.test1 { background: lime; }
> >/* .test2 { background: red; } /* css comment */
> >.test3 { background: blue; } */
> 
> Due to the second "/*" you don't have a comment token starting with the
> first "/*",

That's not true.  The complication in the COMMENT production in
http://www.w3.org/TR/CSS21/syndata.html#tokenization is there to
prevent */ from occurring in a comment, but allow /*.  It works fine
in this case, in which the comment production has parts:
  \/\*[^*]*\*+([^/*][^*]*\*+)*\/
      11111222 3333333333
such that the 11111 matches the " .test2 { background: red; } /",
the "222" matches the "*", and the "333333333" matches the " css
comment ".  The ()* is used exactly once, since there's one interior
*.

So there are just two rules with selectors .test1 and .test3, and no
syntax errors.

-David

-- 
L. David Baron                                 http://dbaron.org/
Mozilla Corporation                       http://www.mozilla.com/
Received on Friday, 12 November 2010 04:11:13 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Friday, 12 November 2010 04:11:23 GMT