2013-03-17 64 views
0

在一些DIV元素中,我有一个复杂的布局,不同的子元素有自己的ID。今天我意识到我需要复制整个事物,并且我没有时间用不同的ID重新创建相同的事物。几个具有相同ID的HTML元素,是不是很错误?

例如,如果有两个具有相同ID的DIV,那么这么糟糕吗?会发生什么?

+1

我建议你花时间正确使用课程。它将为您节省时间,因为临时解决方案通常成为永久的临时解决方案。 – OpherV 2013-03-17 09:54:48

+0

请阅读本文http://css-tricks.com/the-difference-between-id-and-class/ – Zeroic 2013-03-17 10:16:10

回答

0

一个ID应该是唯一的(只有一个元素使用它),而类更像是通用的(一组元素使用它)。从这个website

报价,认为它是一个课堂:

  • ID =一个人的识别(ID)是唯一的一个人。
  • Class =班上有很多人。

所以,我建议你从ID改为类。

0

这是不好的,真的,因为它不应该那样使用。

浏览器是相当宽容的,但我会花时间避免使用类。

2

主要问题是,当使用JS选择它们时,它假定每个ID只有一个 - 这意味着事情通常会中断。

具体来说,getElementById是非常快速的,因为它只假设每个ID中的一个。

另外,HTML4 specification说:

该属性分配一个名称的元素。该名称在文档中必须是唯一的 。

这真的不是很难改变,只是交换idclass,并在你的CSS #.

+0

欲进一步阅读:[HTML5规范的'ID属性'](http://www.w3.org/ TR/html5/dom.html#the-id-attribute)和[HTML4规范的ID属性](http://www.w3.org/TR/html401/struct/global.html#adef-id)(as引)。 – 2013-03-17 12:09:01