Re: [css3-selectors] minor question about :not()

Sylvain Galineau <sylvaing@microsoft.com> wrote:
> Andrey Mikhalev wrote:
> > well, then section 4 is wrong, since not allow alone pseudo-element
> > as selector.
> 
> Would you mind quoting all the relevant statements demonstrating the
> contradiction ?

I see what Andrey is getting at.

# A _sequence_of_simple_selectors_ is a chain of _simple_selectors_
# that are not separated by a _combinator_. It always begins with a
# _type_selector_ or a _universal_selector_.  No other type selector
# or universal selector is allowed in the sequence.
#
# A _simple_selector_ is either a _type_selector_, _universal_selector_,
# _attribute_selector_, _class_selector_, _ID_selector_, or
# _pseudo-class._  One _pseudo-element_ may be appended to the last
# sequence of simple selectors in a selector.

Thus for instance "*::first-letter" may not be shortened to
"::first-letter", because the "::first-letter" is not part of the
sequence of simple selectors, so the only simple selector in the
sequence is "*" and the universal selector may not be omitted when it
is the only simple selector (6.2).

I don't see an internal contradiction in section 4, or a disagreement
with the equivalent section of CSS2.1 (section 5.2).  I have not
close-read all of selectors3 so I don't know if this contradicts
material elsewhere.

There IS a conflict with implementations.  Both Gecko and Opera accept
"::first-letter" by itself as a valid selector.

zw

Received on Tuesday, 17 March 2009 23:49:17 UTC