- From: Andrew Fedoniouk <news@terrainformatica.com>
- Date: Thu, 04 Feb 2010 20:04:46 -0800
- To: www-style <www-style@w3.org>
As for the moment CSS has three "sequence operators" in its grammar: 1. ' ' (whitespace) - it is a token delimiter and also list joining operator. 2. ',' (comma) list joining operator and 3 '/' (slash) list joining operator (used to make single value from pair of values). Problem with space and comma operators. Consider font and proposed multi-background declaration: font: 12pt Arial, sans-serif; background: url(1.gif) repeat, url(2.gif) no-repeat; For the font, ',' comma, as an operator, has higher precedence than space and in background it is vice versa - space is of higher precedence. This can demonstrated by using "priority" brackets: font: (12pt) (Arial, sans-serif); background: (url repeat), (url no-repeat); (Arial, sans-serif) list is a single value of <font-family>. Clearly these two properties are using different syntaxes/grammar rules so parsing of such properties is context (property name) sensitive. Such situation is highly non-desirable in my opinion. I tend to classify as a bug of language design. -- Andrew Fedoniouk. http://terrainformatica.com
Received on Friday, 5 February 2010 04:05:08 UTC