Re: draft-ietf-html-style-00.txt & class as a general selector

lilley (
Fri, 8 Dec 1995 17:57:02 +0000 (GMT)

> Maybe some clarification on the syntax of CSS1 is in order:

Thanks, it was appreciated.

> Basically, when we (i.e., Hakon and I) invent a syntax for a certain
> feature, we start with the syntax for CSS2, and then simplify it for
> CSS1. We're certainly not "tossing in random bits of punctuation"
> (Chris Lilley).

No, but I think some post along the lines of "you could write this"
were. And without the clear description in your posting it was not
always apparent why the syntax was the way it currently is.

> So we have [attr=val] for addressing based on attributes and a
> shortcut `.val' for one designated attribute, which by default is
> `class'. And yes, it *does* scale: in CSS2 there is a definition at
> the top of the style sheet that declares this attribute explicitly, so
> you can say `@class TYPE' at the top for TEI style sheets.

OK, fine.

> Quotes around the value are needed in the same cases as in SGML: when
> `val' is not made up of only letters and digits.

I don't see why. Spaces, for example, seem unambiguous in the examples I posted.

> To simplify CSS1, we disallow addressing based on attributes, but keep
> the shortcut to address classes.
> The `[]' are arbitrary delimiters. As Chris Lilley said, the ']' is
> redundant, but a little redundancy is usually better for humans. I
> think `[]' looks friendlier than Chris's `@', but that is a matter of
> taste.

I think the redundancy does not help, because one cannot explain what
it does. As you say, a mattre of taste. The trailing " for ID is also
redundant, and introduces a context sensitivity. What " means depends
on whether you are already processing a selector which uses an ID.

> 2. "p004"

> Note that (1) doesn't need support from the SGML parser, while (2)
> does. Again, we could have used Chris's `#' instead of quotes, but I
> think the `#' would scare non-programmers.

I picked # arbitrarily based on the american use of # to mean "number",
the mnemonic being "ID number". It could be anything. I don't see any
relevance to programming, as such.

Anyway thanks for the explanation.

Chris Lilley, Technical Author and JISC representative to W3C 
|  Manchester and North Training & Education Centre   ( MAN T&EC )  |
| Computer Graphics Unit,             Email: |
| Manchester Computing Centre,        Voice: +44 161 275 6045       |
| Oxford Road, Manchester, UK.          Fax: +44 161 275 6040       |
| M13 9PL                            BioMOO: ChrisL                 |
| Timezone: UTC        URI: |