元素的子元素的重复 ID。这是好习惯吗? [复制]

Posted

技术标签:

【中文标题】元素的子元素的重复 ID。这是好习惯吗? [复制]【英文标题】:Duplicate id of children of an element. is it good practise? [duplicate] 【发布时间】:2014-05-22 08:49:36 【问题描述】:

我有这么多孩子,在一个元素中,所以为了避免维护多个 id,我使用了相同的 id

ex
<div id="1" class="userstatus">
   <div class="floatl userdetails">
    <span id="name" class="ellips">aravi</span>
   </div>
   <div id="scode" class="status status-1"></div>
</div>
<div id="2" class="userstatus">
   <div class="floatl userdetails">
    <span id="name" class="ellips">aravi</span>
   </div>
   <div id="scode" class="status status-1"></div>
</div>

这里我有重复的名称,1、2 的 innerElements 的 scode id。我可以

我可以使用 querySelector api 来获取名称。我做得对吗?

【问题讨论】:

类是你需要的。 ID 是唯一的,重复的 ID 是错误的,不应使用。 @DJDavid98 我已经提到过,那个 querySelector api 来查找元素。所以我问 如果您想使用 querySelector 检索元素,您可以使用特定的类名并使用 .name.scode 等选择它们。使用重复 ID 永远不是一个好借口。 这是好的做法吗?不 !那应该是一个约定吗?两者都不。此外,虽然 html5 可以使用 id 为 1 位数字,但我认为这样做并不明智...... @Teemu > 实际上我忽略了 HTML 5 更宽松。无论如何,我觉得使用单个数字作为 id 是个坏主意,但这在技术上是正确的,所以我会更新我的评论。 【参考方案1】:

您永远不应使用重复的 ids - id 应该是唯一的 document

如果您需要具有相同“标签”的多个元素,请使用classes。

我建议您阅读:http://css-tricks.com/the-difference-between-id-and-class/

可以这样想:

您的身份证上有一个id 号码,它是您独有的,其他人没有。

但您是在 SO 上发布问题的 class 的一部分,显然我们中的更多人。

【讨论】:

【参考方案2】:

根据定义,ID 应该唯一地描述 DOM 中的一个元素。此外,使用多个 ID 也会影响语义。

【讨论】:

以上是关于元素的子元素的重复 ID。这是好习惯吗? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

在每个可能的地方都使用指针是一种好习惯吗? [复制]

在 React 中,在 DOM 中搜索特定元素是一种好习惯吗?

使用表单属性并将输入元素放在 HTML 中的表单标记之外是一种好习惯吗?

具有 set Input() 任何类型的可重用组件是一个好习惯吗?

Jquery如何选取元素及其所有子元素?

这是问答的好习惯吗?