W3C home > Mailing lists > Public > www-style@w3.org > May 2003

Re: [CSS3 - G&RC] WD 1 - Section 4.1 Syntax

From: Ian Hickson <ian@hixie.ch>
Date: Mon, 26 May 2003 13:45:13 -0700 (PDT)
To: Ernest Cline <ernestcline@mindspring.com>
Cc: "www-style@w3.org" <www-style@w3.org>
Message-ID: <Pine.LNX.4.50.0305261317140.30537-100000@dhalsim.dreamhost.com>

On Mon, 26 May 2003, Ernest Cline wrote:
>
> This section contains the comment:
>
> (So basically any number of '::outside', '::before', '::after', and
> '::alternate' pseudo-elements, so long as no two '::outside' pseudo-
> elements are adjacent, as that is meaningless.)
>
> However the working draft goes on to mention ::outside(n) (as well as
> ::before(n) and ::after(n)
>
> Might not the intended phrase have been:
>   , so long as no two '::alternate' pseudo-elements are adjacent,
>                          ^^^^^^^^^
> since there is no ::alternate(n)?

No, I meant ::outside.

The difference is clearer if you compare this with ::before.

We have:

   ::before
   ::before::before

...and we have:

   ::before(1)
   ::before(2)

...and they are _not_ the same.

The first in both examples are identical, and refer to the CSS2 ':before'
pseudo-element.

The second in the first example means a box just inside the :before box.
The second in the second example means a box just before the :before box.

This is explained by the ASCII art at:

   http://www.w3.org/TR/2003/WD-css3-content-20030514/#nesting

Now, for ::outside, we could have:

   ::outside
   ::outside::outside

...and:

   ::outside(1)
   ::outside(2)

...but if you think about it, they would mean the same thing: in the first
case, representing a box around the first '::outside' box; in the second,
representing the second surrounding box.

In the interests of sanity, I decided it was easier just to allow one, and
I picked the shortest one.

Having multiple ::alternate pseudo-elements isn't something I'd
considered; I've never really needed it in any of the examples I've
constructed. However, you can always do it using the ::alternates on the
various ::before(n) pseudo-elements if necessary.

-- 
Ian Hickson                                      )\._.,--....,'``.    fL
"meow"                                          /,   _.. \   _\  ;`._ ,.
http://index.hixie.ch/                         `._.-(,_..'--(,_..'`-.;.'
Received on Monday, 26 May 2003 16:43:34 GMT

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