W3C home > Mailing lists > Public > www-style@w3.org > July 2010

Re: [css3-selectors] Non-core tokens vs comments

From: Zack Weinberg <zweinberg@mozilla.com>
Date: Wed, 21 Jul 2010 13:39:50 -0700
To: Bjoern Hoehrmann <derhoermi@gmx.net>
Cc: www-style@w3.org
Message-ID: <20100721133950.4be0a1f5@moxana.local>
Bjoern Hoehrmann <derhoermi@gmx.net> wrote:

> Hi,
>   http://www.w3.org/TR/2009/PR-css3-selectors-20091215 introduces
> tokens beyond what CSS 2.1 defines as the unchanging core tokens.
> This assigns significance to comments that they are not supposed to
> have, and creates some anomalies. For instance, there is a token for
> ":not(" defined so that
>   :/**/not(...)
> would not be recognized as :not pseudo class, while e.g.
>   :/**/first-child
> would be recognized as :first-child pseudo class. Opera, Firefox, and
> Webkit however treat the selectors above the same. The same problem
> ex- ists for the new attribute selectors.

Gecko's implementation strategy has been to assume that if some css3
module provides tokenization rules that contradict those in section 4
of css2.1, the module is wrong; with one exception, the extra X=
operators defined by css3-selectors, where we implement the module
rather than section 4.  (A strictly-according-to-section-4
implementation would have to allow [attr*/**/='value'].)  We also
consider section 4 to trump appendix G of css2.1.

If a change is required here (and I'm not convinced it is), my first
choice would be to back-propagate the X= operators to css2.1 and delete
the *entirety* of section 10.2 of css3-selectors; and my second choice
would be to insert verbiage into css2.1 somewhere saying that comments
may only appear where the S token may appear.  Note that these options
would produce different web-observable behavior.

There may also be a problem here with the an+b notation, I'm not sure.

Received on Wednesday, 21 July 2010 20:40:28 UTC

This archive was generated by hypermail 2.4.0 : Friday, 25 March 2022 10:07:48 UTC