[css21] Clarification for issue 85's resolution

Looking back on it, I am not sure I understand how the proposed resolution achieves what we agreed to in Tokyo. We want to allow the Firefox intpretation of this markup [1] :

<style>p, .tes\
t { background:lime }</style>

<div class="test">test1</div>
<p>test2</p>

...in which the backslash-newline sequence is dropped and the rule applied to both elements.

The suggested change to CSS2.1 4.1.3 [2] would change :

# Second, it cancels the meaning of special CSS characters. Any character (except a hexadecimal digit) can be escaped with
# a backslash to remove its special meaning. For example, "\"" is a string consisting of one double quote. Style sheet
# preprocessors must not remove these backslashes from a style sheet since that would change the style sheet's meaning.

...to

# Second, it cancels the meaning of special CSS characters. Any character - except a hexadecimal digit or a newline 
# (\n, \r, or \f) - can be escaped with a backslash to remove its special meaning. For example, "\"" is a string 
# consisting of one double quote. Style sheet preprocessors must not remove these backslashes from a style sheet since 
# that would change the style sheet's meaning.

If the newline character's special meaning is no longer removed by the backslash, how are both characters then dropped in such a way that the group selector above is valid ? 

[1] http://software.hixie.ch/utilities/js/live-dom-viewer/?%3Cstyle%3Ep%2C%20.tes\%0At%20{%20background%3Alime%20}%3C%2Fstyle%3E%0A%0A%3Cdiv%20class%3D%22test%22%3Etest1%3C%2Fdiv%3E%0A%3Cp%3Etest2%3C%2Fp%3E
[2] http://www.w3.org/TR/CSS21/syndata.html#characters

Received on Friday, 27 March 2009 00:39:51 UTC