RE: Problem with @page within @media

--- Bill dehOra <> wrote:
> Wrt to pseudo, the ':' literal is part of a pseudo not a delimiter for
> it,
> in the same sense that '@' is part of an at rule. The same applies for
> class
> and elem identifiers as well.

Elem identifiers?

But anyway your statement is slightly misleading - the ':' literal is not
part of the pseudo in the sense that @ is part of an at-rule because :/*
*/class is valid; i.e., there are two tokens, DELIM and IDENT, whereas
@page is one token, so @/* */page is not valid.

Similarly for .class (a DELIM and an IDENT). Not so for ID however, #id is
one token because ID is forced to share the inappropriate HASH token, and
as a result #id is one token, and so #/* */id is not valid. There are
other similar anomalies in the grammar; for example, the definition of the
FUNCTION is AIR {ident}'(', and a complete function is typified by
FUNCTION IDENT DELIM; e.g., attr(value). This means that attr(/* */) is
valid, but attr/* */() is not.

I also find the tokenization of many of the punctuation characters a
little  strange - AIR '(' and '[' are tokenized, but other similar
characters or not. It seems to me that these tokens are superfluous and
potentially confusing, since many similar characters are matched by the
catch-all DELIM (e.g., ':'). I think that either _all_ of the single
character tokens should be given their own token, or none should.

From Matthew Brealey ( (for law)or (for CSS))
Do You Yahoo!?
Talk to your friends online with Yahoo! Messenger.

Received on Wednesday, 1 March 2000 06:21:06 UTC