当涉及到CSS时,<div class="">和<div id="">之间有什么区别?是否可以使用<div id="">?

我看到不同的开发人员用这两种方式来做这件事,因为我是自学的,所以我从来没有真正弄清楚。


当前回答

id是唯一的。不类。元素也可以有多个类。类也可以动态地添加和删除到元素中。

任何可以使用ID的地方都可以使用类。反之则不然。

惯例似乎是对每个页面上的页面元素使用id(如“导航栏”或“菜单”),对其他所有元素使用类,但这只是惯例,你会发现使用上的差异很大。

另一个区别是,对于表单输入元素,<label>元素通过ID引用字段,因此如果要使用<label>,则需要使用ID。是一个可访问性的东西,你真的应该使用它。

在过去的岁月里,id也是首选,因为它们很容易在Javascript中访问(getElementById)。随着jQuery和其他Javascript框架的出现,现在这几乎不是一个问题。

其他回答

类用于将您的样式应用于一组元素。ID样式只应用于具有该ID的元素(应该只有一个)。通常使用类,但如果只有一个类,则可以使用id(或直接将样式插入元素)。

id必须是唯一的,因为类可以应用于很多东西。在CSS中,id看起来像#elementID,类元素看起来像.someClass

一般来说,当您有许多相似的东西时,当您想引用特定的元素和类时,请使用id。例如,常见的id元素包括页眉、页脚、边栏。常见的类元素是highlight或external-link。

阅读级联并理解分配给各种选择器的优先级是个好主意:http://www.w3.org/TR/CSS2/cascade.html

但是,您应该了解的最基本的优先级是id选择器优先于类选择器。如果你有这个:

<p id="intro" class="foo">Hello!</p>

and:

#intro { color: red }
.foo { color: blue }

文本会是红色的,因为id选择器优先于类选择器。

一个CLASS应该用于您希望具有相同样式的多个元素。ID应该用于唯一的元素。请参阅本教程。

如果您想成为一个严格的墨守成规者,或者如果您希望您的页面符合标准,那么您应该参考W3C标准。

在应用CSS时,将其应用于类,并尽量避免应用于id。ID只能在JavaScript中用于获取元素或任何事件绑定。

应该使用类来应用CSS。

有时必须使用类进行事件绑定。在这种情况下,尽量避免使用用于应用CSS的类,而是添加没有相应CSS的新类。当你需要更改任何类的CSS或更改任何元素的CSS类名时,这将会有所帮助。

任何元素都可以有类或id。

类用于引用某种类型的显示,例如,您可能有一个css类用于表示这个问题的答案的div。因为会有很多答案,多个div将需要相同的样式,你将使用一个类。

一个id只引用一个元素,例如右边的相关部分可能有特定于它的样式,而不是在其他地方重用,它将使用一个id。

从技术上讲,您可以使用所有的类,或者在逻辑上拆分它们。但是,您不能对多个元素重用id。