[CSS21] Please make the BOM take highest precedence for character encoding information for text/css (higher than HTTP)

Regarding: http://www.w3.org/TR/CSS21/syndata.html#charset

Letting HTTP-level character encoding information take precedence over
a BOM never leads to sensible results, because the bytes that a BOM
consists of never occurred for non-BOM purposes at the start of a
file. So far, it seems that making the BOM override HTTP for HTML and
JavaScript makes a Web engine more Web-compatible. The BOM overrides
HTTP for HTML in IE up to and including 9 (but not 10), in Chrome and
in Opera. The BOM overrides HTTP for JS in IE7 (but not in 8, 9 or
10), in Chrome and in Opera.

While I am unaware of Web compat evidence for CSS, it would make CSS
more consistent with the rest of the platform to make the BOM take the
highest precedence for CSS as well. Opera and Chrome already give the
BOM the highest precedence for CSS.

I did not test Safari.

Please change CSS to give the highest precedence to the BOM (UTF-8,
UTF-16 little endian or UTF-16 big endian).

Gecko bug for the CSS case:
https://bugzilla.mozilla.org/show_bug.cgi?id=796882

Gecko bug for the JavaScript case:
https://bugzilla.mozilla.org/show_bug.cgi?id=687859

Gecko bug for the HTML and XML case:
https://bugzilla.mozilla.org/show_bug.cgi?id=716579

Spec bug for the JavaScript case:
https://www.w3.org/Bugs/Public/show_bug.cgi?id=19623

Spec bug for the HTML case:
https://www.w3.org/Bugs/Public/show_bug.cgi?id=17810

Test case for HTML:
http://hsivonen.iki.fi/test/moz/bom/html.html1251

Test case for CSS and JS:
http://hsivonen.iki.fi/test/moz/bom/no-charset-attribute.html1251
(Check baseline for :after support:
http://hsivonen.iki.fi/test/moz/bom/baseline.html )

-- 
Henri Sivonen
hsivonen@iki.fi
http://hsivonen.iki.fi/

Received on Friday, 19 October 2012 12:39:25 UTC