2009-09-08 237 views

回答

28

按照HTML 4.0 specification for basic types

ID和名称标记必须以 字母开头([A-ZA-Z]),并且可以通过任意数量的字母之后 ,数字 ([0 -9]),连字符(“ - ”),下划线 (“_”),冒号(“:”)和句点 (“。”)。

即使空格是有效的,具有空格的id属性也会被jQuery解释为带有当前选择器语法的ancestor descendant selector

9

简短的回答是没有。字母,数字,下划线,连字符,句点和冒号。

(织补,卡里姆打我给它。)

+1

啊,两分钟迟到了:)请投票! – Dima 2014-11-14 14:53:19

3

这是类比论证。

考虑CLASS选择器。 与ID不一样,但有些模糊。

显然,你不能有一个名与嵌入式的空间,因为类

<p class='a b c'>some text</p> 

列表不能从空间一个名称来区分。

好的,你不能有有一个ID名称列表,无论如何,所以这个比喻分崩离析,但我认为我们已经太快尝试插入他们不属于的空间。

7

虽然这是一个老问题,但我认为我会分享HTML5规范的相关信息,以帮助那些遇到这个问题的人,因为我在问了几年之后做了这些。

按照HTML 5 Spec

值必须是在元素的家子树的所有ID之间独特的,并且必须包含至少一个字符。该值不能包含任何空格字符。

它还说:

有什么形成一个ID可以在没有其他限制;特别是,ID可以只包含数字,以数字开头,以下划线开头,只包含标点符号等。