需要知道HTML元素是否可以具有ID的多个属性,例如:
<input type="text" id="identifier1" id="selector1" />
因为我需要澄清这篇关于W3 website选择器的陈述。
如果元素具有多个ID属性,则必须处理所有这些属性 作为ID选择器用途的该元素的ID。这样的 使用xml:id,DOM3 Core,XML的混合可以达到这种情况 DTD和特定于命名空间的知识。
人们所指的可能重复,说明了这种语法的问题
<input type="text" id="identifier1 selector1" />
这与我要求的语法不同。
答案 0 :(得分:25)
需要知道HTML元素是否可以具有ID的多个属性
简短回答? 否,因为浏览器只会渲染第一个。
请参阅this Fiddle,我只能使用DOM中显示的第一个id
在CSS中定位它。尝试更改该CSS选择器以使用第二个id
,它将无效。
那是因为浏览器似乎忽略了第二个ID,因为这是输出HTML:
<input type="text" id="identifier1">
如果您确实需要元素上的其他标识符,则应考虑使用多个类名或数据属性来对应其他数据。
答案 1 :(得分:6)
需要知道HTML元素是否可以具有ID的多个属性
没有。 HTML中的任何元素都不能包含给定属性的多个实例。
我需要澄清这个陈述
请注意该陈述中的最后一句。
另请注意,“ID属性”的CSS概念不是“具有名称id
的属性”。同样引用该文件:
文档语言可能包含声明为ID
类型的属性
只有id
属性是HTML中的ID类型。
答案 2 :(得分:4)
答案 3 :(得分:1)
对于html元素, ID 不能相同,但是Classes用于多个元素,而一个元素可能有多个类
答案 4 :(得分:1)
不,因为标签中不得重复属性。这是HTML中的一般规则,不仅限于id
属性。对于名义上基于SGML的HTML版本和XHTML,这遵循一般的SGML和XML规则。对于HTML序列化HTML5,请参阅HTML5 CR, 8.1.2.3 Attributes。
很难理解为什么要使用重复的id
属性,因此我无法建议解决方法。通常,对于id
属性的任何正常使用,每个元素一个属性就足够了。
答案 5 :(得分:0)
没有。元素ID在整个文档中应该是唯一的。