Make NBSP an identifier character per resolution of CSS 2.1 issue 196. (Bug 591589) r=bzbarsky a2.0=roc

This commit is contained in:
L. David Baron 2010-09-18 11:43:17 -07:00
Родитель 85ea04d7eb
Коммит 8db138d3f4
3 изменённых файлов: 60 добавлений и 2 удалений

Просмотреть файл

@ -105,8 +105,8 @@ static const PRUint8 gLexTable[256] = {
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
//
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
// ¡ ¢ £ ¤ ¥ ¦ § ¨ © ª « ¬ ­ ® ¯
0, SI, SI, SI, SI, SI, SI, SI, SI, SI, SI, SI, SI, SI, SI, SI,
// NBSP¡ ¢ £ ¤ ¥ ¦ § ¨ © ª « ¬ ­ ® ¯
SI, SI, SI, SI, SI, SI, SI, SI, SI, SI, SI, SI, SI, SI, SI, SI,
// ° ± ² ³ ´ µ ¶ · ¸ ¹ º » ¼ ½ ¾ ¿
SI, SI, SI, SI, SI, SI, SI, SI, SI, SI, SI, SI, SI, SI, SI, SI,
// À Á Â Ã Ä Å Æ Ç È É Ê Ë Ì Í Î Ï

Просмотреть файл

@ -156,6 +156,7 @@ _TEST_FILES = test_acid3_test46.html \
test_moz_device_pixel_ratio.html \
test_namespace_rule.html \
test_of_type_selectors.xhtml \
test_parse_ident.html \
test_parse_rule.html \
test_parse_url.html \
test_pixel_lengths.html \

Просмотреть файл

@ -0,0 +1,57 @@
<!DOCTYPE HTML>
<html>
<head>
<title>Test for CSS identifier parsing</title>
<script type="application/javascript" src="/MochiKit/packed.js"></script>
<script type="application/javascript" src="/tests/SimpleTest/SimpleTest.js"></script>
<link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/>
</head>
<body>
<a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=">Mozilla Bug </a>
<div id="content" style="display: none">
</div>
<pre id="test">
<script type="application/javascript">
var div = document.getElementById("content");
function counter_increment_parses(i)
{
div.style.counterIncrement = "";
div.style.counterIncrement = i;
return div.style.counterIncrement != "";
}
function is_valid_identifier(i)
{
ok(counter_increment_parses(i),
"'" + i + "' is a valid CSS identifier");
}
function is_invalid_identifier(i)
{
ok(!counter_increment_parses(i),
"'" + i + "' is not a valid CSS identifier");
}
for (var i = 0x7B; i < 0xA0; ++i) {
is_invalid_identifier(String.fromCharCode(i));
is_invalid_identifier("a" + String.fromCharCode(i));
is_invalid_identifier(String.fromCharCode(i) + "a");
}
for (var i = 0xA0; i < 0xFF; ++i) {
is_valid_identifier(String.fromCharCode(i));
}
is_valid_identifier(String.fromCharCode(0x100));
is_valid_identifier(String.fromCharCode(0x375));
is_valid_identifier(String.fromCharCode(0xFEFF));
is_valid_identifier(String.fromCharCode(0xFFFD));
is_valid_identifier(String.fromCharCode(0xFFFE));
is_valid_identifier(String.fromCharCode(0xFFFF));
</script>
</pre>
</body>
</html>