- From: Simon Sapin <simon.sapin@exyr.org>
- Date: Mon, 27 May 2013 19:34:41 +0800
- To: www-style list <www-style@w3.org>
Hi, The way tokenization is defined in CSS 2.1, the end of the stylesheet in the middle of a quoted string or url() notation produce a BAD_STRING and BAD_URI token, respectively. The "bad" in the name implies that such tokens are syntax errors, and should for example make a Custom Property declaration invalid/ignored. http://www.w3.org/TR/CSS21/syndata.html#tokenization However, the "Unexpected end of style sheet" error handling rule later in the same chapter seems to contradict this. End of stylesheet in a quoted string is said to produce a valid string. Same for url() assuming it is considered a "construct". ("Construct" is not defined precisely.) http://www.w3.org/TR/CSS21/syndata.html#unexpected-eof The only way I see to interpret this is that a BAD_STRING or BAD_URI token is considered valid if (and only if?) it is followed but the end of the stylesheet. This seems to be a bug in 2.1. If we want such cases to be valid, the tokenizer should emit "good" STRING or URI tokens, which is what Syntax 3 does. This seems to be the be the behavior intended by the EOF rule, but is it? Should we fix 2.1? -- Simon Sapin
Received on Monday, 27 May 2013 11:35:14 UTC