当类名只是一个整数时,你如何编写CSS选择器?

时间:2012-05-27 16:50:06

标签: css css-selectors

假设我有

<span class="1">hello</span>

我想宣布:

span.1 { /* rules */ }

这似乎不起作用(即没有应用CSS规则。)有没有办法让它工作?我试着在CSS选择器中引用“1”,但这似乎不是它。

3 个答案:

答案 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 给了我们很棒的答案。