<!DOCTYPE HTML> <html> <!-- https://bugzilla.mozilla.org/show_bug.cgi?id=543428 --> <head> <title>Test for Bug 543428</title> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <script src="/tests/SimpleTest/SimpleTest.js"></script> <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/> <style type="text/css" id="sheet">p { color: blue; }</style> </head> <body> <a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=543428">Mozilla Bug 543428</a> <p id="display"></p> <div id="content" style="display: none"> </div> <pre id="test"> <script type="application/javascript"> /** Test for Bug 543428 **/ var sheet = document.getElementById("sheet").sheet; var rule = sheet.cssRules[0]; function set_selector_text(selector) // no cssText or selectorText setter implemented yet { try { // insertRule might throw on syntax error sheet.insertRule(selector + " { color : green }", 0); sheet.deleteRule(1); } catch(ex) {} rule = sheet.cssRules[0]; } is(rule.selectorText, "p", "simple identifier not escaped"); set_selector_text('\\P'); is(rule.selectorText, "P", "simple identifier not escaped"); set_selector_text('\\70'); is(rule.selectorText, "p", "simple identifier not escaped"); set_selector_text('font-family_72756'); is(rule.selectorText, "font-family_72756", "simple identifier not escaped"); set_selector_text('-font-family_72756'); is(rule.selectorText, "-font-family_72756", "simple identifier not escaped"); set_selector_text('-0invalid'); set_selector_text('0invalid'); is(rule.selectorText, "-font-family_72756", "setting invalid value ignored"); set_selector_text('Håkon\\ Lie'); is(rule.selectorText, "Håkon\\ Lie", "escaping done only where needed"); </script> </pre> </body> </html>