为什么在CSS中,#1(作为div元素的id)样式不起作用?

时间:2015-10-04 14:58:14

标签: html css

<div class="image" id="1"></div>
<div class="image" id="2"></div>
<div class="image" id="3"></div>

http://codepen.io/Chrez/pen/KdWrBe

正如您在codepen中看到的那样,&#34; id =&#39; 1&#39;&#34;不起作用。

我需要这样,因为它是滑块,我的jQuery函数就是这样工作。

2 个答案:

答案 0 :(得分:5)

它的CSS规则,您不能使用Number作为起始字符或类或ID。这就是为什么它不会工作。你至少要在数字前加1个字母!

这就是w3c中所说的 -

  

在CSS中,标识符(包括选择器中的元素名称,类和ID)只能包含字符[a-zA-Z0-9]和ISO 10646字符U + 00A0及更高,加上连字符( - )和下划线(_);它们不能以数字,两个连字符或连字符后跟数字开头。标识符还可以包含转义字符和任何ISO 10646字符作为数字代码(请参阅下一项)。例如,标识符“B&amp; W?”可以写成“B \&amp; W \?”或“B \ 26 W \ 3F”。

http://www.w3.org/TR/CSS21/syndata.html#characters

答案 1 :(得分:1)

是的,根据w3c,我们无法使用#1,但这个小小的css-hack可以正常运行:div[id="1"].image[id="1"]