我注意到如果 id 或 class 从数字开始,则不应用 css 属性。例如,以下任何一个都不起作用:
.1ww{
/* some properties here */
}
and
.1{
/* some properties here */
}
and
#1{
/* some properties here */
}
and
#1ww{
/* some properties here */
}
为什么 CSS 不支持从数字开始的 id 或类名? (例如,Javascript 可处理数字 ID 和类)
事实上,规范规定以数字开头的类将被解释为维度 [1 http://plnkr.co/edit/024EEM1FRdFqqmwHVbjJ?p=preview]:
CSS2 将紧随其后的数字解析为 DIMENSION 标记(即未知单位),CSS1 将其解析为数字和标识符。这意味着在 CSS1 中,声明“font: 10pt/1.2serif”是正确的,“font: 10pt/12pt serif”也是正确的;在 CSS2 中,“serif”之前需要一个空格。 (一些用户代理接受第一个例子,但不接受第二个例子。)
由于我们不知道将来会引入哪些维度,因此 CSS 中不存在的维度将被解析为未知维度:
在CSS1中,类名可以以数字(“.55ft”)开头,除非它是尺寸(“.55in”)。在 CSS2 中,此类类被解析为未知维度(以便将来添加新单位)。为了使“.55ft”成为有效的类,CSS2 要求对第一个数字进行转义(“.\35 5ft”)
您可以通过转义第一个数字来使用以数字开头的类,根据 W3C CSS 验证器,这是有效的。看看plunkr http://plnkr.co/edit/024EEM1FRdFqqmwHVbjJ?p=preview.
[1 http://plnkr.co/edit/024EEM1FRdFqqmwHVbjJ?p=preview] 附录G.CSS 2.1语法
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)