2015-10-04 58 views
2
<div class="image" id="1"></div> 
<div class="image" id="2"></div> 
<div class="image" id="3"></div> 

http://codepen.io/Chrez/pen/KdWrBe为什么在CSS中,#1(作为div元素的id)样式不起作用?

正如你在 “ID = '1'” 的codepen造型见不起作用。

我需要这种方式,因为它是用于滑块,我的jQuery函数以这种方式工作。

+0

你可以让我的答案,因为公认的答案,如果你有你正在寻找的答案。它会帮助其他人知道相同的信息。 –

回答

5

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

这是在W3C说 -

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

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

+3

另请注意:两个连字​​符实际上在许多浏览器中都有效,因为建议包含启动'--'的CSS变量。正如你发布的,虽然它不在标识符的实际W3C词典中。 http://www.w3.org/TR/CSS21/grammar.html#scanner – Alejalapeno

1

是的,我们不能用W3C根据使用#1,但这个小CSS-黑客将工作:div[id="1"]或只是.image[id="1"]

相关问题