W3C home > Mailing lists > Public > www-style@w3.org > February 2004

Re: [css3-page] LCWD issue 23 -- [23] Section 3.4.1 Example

From: Ernest Cline <ernestcline@mindspring.com>
Date: Sun, 8 Feb 2004 14:49:16 -0500
Message-ID: <410-2200420819491615@mindspring.com>
To: "L. David Baron" <dbaron@dbaron.org>, "W3C CSS List" <www-style@w3.org>

> [Original Message]
> From: L. David Baron <dbaron@dbaron.org>
> They seem more like pseudo-classes to me.  With normal selectors (used
> in rules), pseudo-classes select things (elements) that are selected by
> other selectors, whereas pseudo-elements select other things.  I think
> it should be the same for page selectors -- both page names and :left,
> :right, and :first select pages, so it seems odd to want to turn the
> latter group into pseudo-elements rather than pseudo-classes.
> To put it another way, there is no object that can be matched by both a
> selector with a pseudo-element and a selector without one.  Making
> :left, etc., pseudo-elements would mean that a single page box could be
> selected both by a selector with a pseudo-element and a selector without
> one.

I see your point as to why they are not analogous to pseudo-elements, but
that makes the :left, :right, and :first essentially neither fish nor fowl
since they
are not acting like pseudo-classes either because of what I mentioned

Perhaps they should be renamed pseudo-pages instead and they just
happen to look like pseudo-classes.  After all, they aren't usable as
pseudo-classes, or vice versa are they?  I realize its a bit late to be
about terminology, yet if they are going to be called pseudo-classes,
then to be consistent with pseudo-classes in general then with the following
example the color of a <span> on a first right page would have to be red,
while for CSS2 it must be blue.

@page :first {span {color:blue}}
@page :right {span {color:red}}

Of course, with either interpretation this next example always yields a
span on the first page with a color of blue under either interpretation.

@page :right {span {color:red}}
@page :first {span {color:blue}}

So as I see it, in order to keep pseudo-class specificity consistent,
either CSS3 should call :left, :right, and :first  by some other name
than pseudo-classes or it should change the rules so that like other
pseudo-classes the position of the rules determines which wins when
the rules have equal specificity.  If the name is changed, calling them
pseudo-pages would seem to make the most sense, and it is what they
are called in the grammar given in Section 3.4.1.  I can't see that this
is important enough to cause a set of valid CSS2 rules to be interpreted
differently under CSS3, so even if they are still called pseudo-classes
I would have to support maintaining consistency with CSS2.
Received on Sunday, 8 February 2004 14:48:34 UTC

This archive was generated by hypermail 2.3.1 : Monday, 2 May 2016 14:27:11 UTC