W3C home > Mailing lists > Public > www-style@w3.org > October 2012

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

From: Henri Sivonen <hsivonen@iki.fi>
Date: Fri, 19 Oct 2012 15:38:56 +0300
Message-ID: <CAJQvAudK3AfyMFFnT+iJ63wgJgzco4v7awer41TqDS-yNJ4RTQ@mail.gmail.com>
To: www-style@w3.org
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:

Gecko bug for the JavaScript case:

Gecko bug for the HTML and XML case:

Spec bug for the JavaScript case:

Spec bug for the HTML case:

Test case for HTML:

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

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

This archive was generated by hypermail 2.4.0 : Monday, 23 January 2023 02:14:20 UTC