- From: <bugzilla@jessica.w3.org>
- Date: Thu, 24 Mar 2011 17:55:02 +0000
- To: public-html-bugzilla@w3.org
http://www.w3.org/Bugs/Public/show_bug.cgi?id=12372 Summary: Rules for parsing a legacy color value should strip whitespace or something Product: HTML WG Version: unspecified Platform: All OS/Version: All Status: NEW Severity: minor Priority: P2 Component: HTML5 spec (editor: Ian Hickson) AssignedTo: ian@hixie.ch ReportedBy: Simetrical+w3cbug@gmail.com QAContact: public-html-bugzilla@w3.org CC: mike@w3.org, public-html-wg-issue-tracking@w3.org, public-html@w3.org Consider the legacy color value " #fff". The spec doesn't strip the whitespace from input, only from keyword, so it fails to remove the leading space and doesn't treat the # specially. Then it replaces all non-hex characters by "0", so it gets "00fff". Then it's not a multiple of three, so it pads to "00fff0". This translates to #00fff0, a.k.a. rgb(0, 255, 240). Likewise, " fff" becomes "0fff00". Test case: <!doctype html> <font color=" #fff">Test</font> <font color="#fff">Test</font> <font color=" fff">Test</font> <font color="fff">Test</font> <script>document.body.textContent = getComputedStyle(document.querySelectorAll("font")[0]).color + getComputedStyle(document.querySelectorAll("font")[1]).color + getComputedStyle(document.querySelectorAll("font")[2]).color + getComputedStyle(document.querySelectorAll("font")[3]).color;</script> Spec: #00fff0#ffffff#0fff00#0f0f0f IE 9 RC: #0f0f0f#0f0f0f#0f0f0f#0f0f0f Firefox 4 RC: #ffffff#ffffff#0f0f0f#0f0f0f Chrome 11 dev: #ffffff#ffffff#ffffff#ffffff Opera 11: #0fff00#0f0f0f#0f0f0f#0f0f0f (I've translated rgb() syntax to hex for easier interpretation.) If the spec stripped whitespace, it would be: #ffffff#ffffff#0f0f0f#0f0f0f which exactly matches Gecko. The current spec doesn't match any browser for the leading-whitespace cases, while this change would make it match two or three browsers respectively. -- Configure bugmail: http://www.w3.org/Bugs/Public/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the QA contact for the bug.
Received on Thursday, 24 March 2011 17:55:05 UTC