具有相同 ID 的多个元素:无效之旅
尽管 W3C 明确规定页面中的两个元素不应共享相同的 ID,但这是一个令人费解的现象当多个元素拥有相同的 ID 时就会出现这种情况。让我们研究一下这种异常的影响。
浏览器行为
浏览器通常采用“静默失败”的方法,解释无效的 HTML 以符合他们的期望。因此,虽然它是无效的,但具有相同 ID 的两个元素的 HTML 示例可以在所有浏览器中工作。
潜在的副作用
但是,如果偏离规范,您就打开了大门不可预见的后果。例如,使用 getElementById() 方法只会检索具有指定 ID 的第一个元素。
更安全的替代方案
不要使用具有相同 ID 的多个元素,而是使用类名称进行样式设置元素组。这种做法符合CSS选择器的预期设计。
查询具有相同ID的元素
如果你绝对必须选择具有相同ID的多个元素,你可以求助于属性选择器:
document.querySelectorAll('p[id="red"]');
请注意,此方法可能不适用于较旧的浏览器版本,例如 IE7 和
结论
虽然浏览器可能会容纳无效的 HTML,但强烈建议不要依赖这种行为。为了一致性、可维护性并避免潜在问题,请使用类名来设计相似元素的样式。
以上是在 HTML 中使用重复的 ID 时会发生什么?的详细内容。更多信息请关注PHP中文网其他相关文章!

文章讨论了CSS FlexBox,这是一种布局方法,用于有效地对齐和分布响应设计中的空间。它说明了FlexBox用法,将其与CSS网格进行了比较,并详细浏览了浏览器支持。

本文讨论了使用CSS创建响应网站的技术,包括视口元标签,灵活的网格,流体媒体,媒体查询和相对单元。它还涵盖了使用CSS网格和Flexbox一起使用,并推荐CSS框架

本文讨论了CSS盒装属性,该属性控制了元素维度的计算方式。它解释了诸如Content-Box,Border-Box和Padding-Box之类的值,以及它们对布局设计和形式对齐的影响。


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

VSCode Windows 64位 下载
微软推出的免费、功能强大的一款IDE编辑器

Atom编辑器mac版下载
最流行的的开源编辑器

Dreamweaver Mac版
视觉化网页开发工具

ZendStudio 13.5.1 Mac
功能强大的PHP集成开发环境

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)