假设我有
<span class="1">hello</span>
我想宣布:
span.1 { /* rules */ }
这似乎不起作用(即没有应用CSS规则。)有没有办法让它工作?我试着在CSS选择器中引用“1”,但这似乎不是它。
答案 0 :(得分:7)
请参阅:Which characters are valid in CSS class names/selectors?
(类)名称必须以下划线(_),短划线( - )或字母(a-z)开头
答案 1 :(得分:4)
您应该始终将语言命名为类和ID。一个数字给任何人带来什么意义?它算什么?
为避免这种情况,将ID和类命名为整数不是valid CSS according to W3,因此大多数浏览器都不支持。始终验证您的HTML和CSS。
解决方案是简单地为您的班级提供更有意义的名称。你还算什么?它是否在博客上发表评论?如果是这样,您可以将类comment
添加到每个类中。如果你真的需要每个名称的唯一名称,你可以改用comment5
,但这似乎没有多大意义,在这种情况下你应该使用ID。
W3C's CSS specification, section 4.1.3 Characters and case:
中也描述了确切的命名要求在CSS中,标识符(包括选择器中的元素名称,类和ID)只能包含字符[a-zA-Z0-9]和ISO 10646字符U + 00A0及更高,加上连字符( - )和下划线(_); 他们不能以数字,两个连字符或连字符后跟数字开头。标识符还可以包含转义字符和任何ISO 10646字符作为数字代码(请参阅下一项)。例如,标识符“B&amp; W?”可以写成“B \&amp; W \?”或“B \ 26 W \ 3F”。
答案 2 :(得分:3)
所以你应该检查CSS Grammar
所以名称必须以下划线_,字母(a-z)开头,后跟任意数量的破折号,下划线,字母或数字。
修改强> 我建议你阅读这篇文章Valid chars in CSS class names。 同事 @Triptych 给了我们很棒的答案。