- From: Peter S. Linss <peter@linss.com>
- Date: Fri, 02 Mar 2001 17:35:40 -0800
- To: Eric Meyer <emeyer@theopalgroup.com>
- CC: www-style@w3.org
The token is essentially the smallest unit in the CSS grammar. As an analogy, in English, the tokens are: words, numbers, spaces, punctuation, etc. In your example the tokens are (note that various tokenizer/paser pair may use different granularity, this is what Mozilla uses): 'h1': an IDENT ' ': a whitespace '{': a punctuation 'color': an IDENT ':': a punctuation ' ': a whitespace '/* tan */': a comment, effectively a whitespace ' ': a whitespace (?, or possibly a linebreak, can't tell from your mail, and doesn't matter anyway, it's still whitespace) '#FFCC66': a HASH (there are special cases of these for colors) ';': a punctuation '}': a punctuation And to answer the original question, no, the browser should not have ignored the CSS, it is perfectly valid. Eric Meyer wrote: > In response to a question e-mailed to me, I've found I need to > know exactly what constitute tokens in CSS. Not being a programmer, > the specification doesn't make it easy to find out so I figured > somebody here could tell me. > Basically, the question was: "I wrote 'h1 {color: /* tan */ > #FFCC66;}' and it was ignored by my browser. Why?" So I went and > looked up comments, and discovered that they may "appear anywhere > between other tokens" (CSS2:4.1.1). So should the browser have > ignored what the user wrote? Is a declaration the smallest token, or > are property and value separate tokens? Inquiring minds want to > know... > > -- > Eric Meyer > Internet Applications Manager e-mail: emeyer@theopalgroup.com > The OPAL Group / Technical Services voice: (216) 986-0710 ext. 21 > http://www.theopalgroup.com/ fax: (216) 986-0714
Received on Friday, 2 March 2001 20:36:46 UTC