id属性 | id (attribute)

id (attribute)

id用于定义唯一的标识符,它是一个全局属性,在整个HTML文档中它的值必须是唯一的。它的用途是当进行链接时标识元素的(使用片段时的标识符),比如使用脚本,或者样式(CSS)。

这个属性的值是一个不能读懂的字符串:这意味着网页作者不能用他来传递任何信息,比如语义,不能从该字符串中得到.

这个属性的值必须不能包含空格,对于包含空格的属性值浏览器会认为是不符合标准的。相比之下,class属性允许包含用空格隔开的多个值,而元素的id只能有一个单一的标识符。注意某个元素可能有几个id,但是其他的id应该是通过别的方法定义的,比如可以通过DOM接口操作元素的脚本。

注意:id值使用字符时,除了 ASCII字母和数字、“—”、“-"、"."之外,可能会引起兼容性问题,因为在HTML4中是不允许包含这些字符的,这个限制在HTML5中更加严格,为了兼容性id值必须由字母开头。

规范

规范状态评论
HTML生活标准该规范中'id'的定义。生活水平最新的快照,HTML 5.1没有变化
HTML 5.1该规范中'id'的定义。建议HTML Living Standard的快照,HTML5没有改变
HTML5该规范中'id'的定义。建议HTML Living Standard的快照,现在接受'_',' - '和'。' 如果不是在id的开头。这也是一个真正的全球属性。
HTML 4.01规范该规范中'id'的定义。建议除<base>,<head>,<html>,<meta>,<script>,<style>和<title>外的所有元素均受支持。

浏览器兼容性

FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari
Basic support(Yes)(Yes)1(Yes)(Yes)(Yes)

FeatureAndroidChrome for AndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Basic support(Yes)(Yes)(Yes)1(Yes)(Yes)(Yes)

1 id is a true global attribute only since Gecko 32.0 (Firefox 32.0 / Thunderbird 32.0 / SeaMonkey 2.29).