W3C home > Mailing lists > Public > www-style@w3.org > November 2006

Re: [CSS 3] Feature Request: Negotiation selector

From: Matthew Raymond <mattraymond@earthlink.net>
Date: Sun, 19 Nov 2006 07:55:15 -0500
Message-ID: <45605433.8030901@earthlink.net>
To: Boris Zbarsky <bzbarsky@mit.edu>, daniel.glazman@disruptive-innovations.com
CC: Marco von Frieling <teuchlfex@gmx.at>, www-style Mailing List <www-style@w3.org>

Boris Zbarsky wrote:
> Marco von Frieling wrote:
>> It means: (Try to) Apply the following rules to all elements selected by h1,
>> h2 and h3, but not to elements selected by .login h1.
> 
> Or we could allow things other than simple selectors as arguments to :not...
> 
> Note that in your case if the combinator in use were ">" instead of " " you 
> could already do  ":not(.login) > h1".  Sadly, ":not(login) h1" doesn't mean the 
> same thing as "h1:not(.login h1)" would if it existed.

Daniel Glazman Wrote:
> Boris Zbarsky wrote:
>> Or we could allow things other than simple selectors as arguments to 
>> :not...
> 
> The biggest problems here are (a) the computation of the specificity of
> such a selector (b) of course the fact that not(a and b) is not(a) or
> not(b).

   In other words, to do "h1:not(login > h1)", you'd need to do this:

| :not(.login) > h1, .login > * h1 { /* Styling. */ }

   For ".login h1" and "h1:not(login h1)", one would think the following
would work:

| h1 { /* Common styling. */ }
| .login h1 { /* Login styling. */ }
| :not(.login) > h1 { /* Styling for non-Login level 1 headers. */ }
| :not(.login) > * > h1 { /* Styling for non-Login level 1 headers. */ }
| :not(.login) > * > * > h1 { /* ... */ }
| :not(.login) > * > * > * > h1 { /* ... */ }
| :not(.login) > * > * > * > * > h1 { /* ... */ }
| :not(.login) > * > * > * > * > * > h1 { /* ... */ }
| :not(.login) > * > * > * > * > * > * > h1 { /* ... */ }
| :not(.login) > * > * > * > * > * > * > * > h1 { /* ... */ }
| :not(.login) > * > * > * > * > * > * > * > * > h1 { /* ... */ }
| :not(.login) > * > * > * > * > * > * > * > * > * > h1 { /* ... */ }
| [... On into infinity ...]

CRAP!!!
Received on Sunday, 19 November 2006 12:55:43 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Monday, 27 April 2009 13:54:47 GMT