0

我读了一篇文章,其中建议我们应该只在标记中使用类,并且只在需要从 javascript 引用它时使用 id(因为将函数附加到 id 更容易)

目前,当我有多个需要类似样式的元素时,我只使用类。然而这篇文章(我认为我读过 - 但没有参考)指出我们应该在整个过程中使用类

我会这样做:

<header id="banner"></header>

建议是:

<header class="banner"></header>

(即使每页只使用一次横幅)

这是新的“良好做法”吗?

谢谢

4

4 回答 4

2

据我所知,您是正确的,当您需要设置多个元素和 ID 的样式时,您应该使用类,而您只需要设置一个唯一元素的样式。

于 2012-05-08T16:37:36.043 回答
1

我想你可能偶然发现了一篇关于面向对象的 css的文章。基本思想是您应该将样式视为一种通过类链接到您的标记的抽象。我发现它是一种让事情井井有条的好技术,但是,与所有技术一样,它并不是一个通用的硬性规则。我认为将样式链接到带有 ID 的标记没有问题,只要这最有意义。

真正难以定义的是“有意义”。

于 2012-05-08T16:39:33.370 回答
1

ID 属性、定义和用法

id 属性为 HTML 元素指定一个唯一的 id(该值在 HTML 文档中必须是唯一的)。

id 属性最常用于指向样式表中的样式,并通过 JavaScript(通过 HTML DOM)来操作具有特定 id 的元素。

在这里阅读更多信息

CLASS 属性、定义和用法

class 属性为元素指定一个或多个类名。

class 属性主要用于指向样式表中的类。但是,JavaScript 也可以使用它(通过 HTML DOM)来更改具有指定类的 HTML 元素。

在这里阅读更多信息

因此,您可以使用任何一个 Id 来设置您的 Class 的样式,只要知道该类可以在您的网页中的其他元素上重新使用,ID 必须始终是唯一的。

之所以说 Class 是应用 CSS 的最佳属性,是因为您可以拥有通用的类名称,然后在您的网页中大量使用,从而简化并减少编码时间:)


简单的例子:

HTML

<div id="theUniqueID">
  Hello!
</div>
<div id="theUniqueIDTwo">
  Hello Again!
</div>

CSS

#theUniqueID {
  font-size: 15px;
  text-align: right;
}
#theUniqueIDTwo {
  font-size: 15px;
  text-align: right;
}

可以简化为:

#theUniqueID, #theUniqueIDTwo {
  font-size: 15px;
  text-align: right;
}

并且可以像这样在整个文档中普遍使用:

.format_01 {
  font-size: 15px;
  text-align: right;
}

有了 HTML,如:

<div class="format_01">
  Hello!
</div>
<div class="format_01">
  Hello Again!
</div>
<div class="format_01">
  Hello Again and Again!
</div>

Ps: 很抱歉回答过度,但这也让其他知识较少的人也可以学习。

于 2012-05-08T16:53:51.323 回答
0

基本上,您应该将id用于唯一元素,这意味着如果您想在页面上保留一个不会出现在页面上两次的元素,那么您应该使用id并为一组具有相同样式的元素设置样式或保留一些元素在同一组中,您应该使用class

但是请记住,您也可以将class用于单个 a 元素,但您不能将id用于页面上的多个元素。

例如,getElementById$('#idOfElement') (using jQuery)返回单个元素,但getElementsByClassName$('.idOfElement') (using jQuery)返回匹配元素的数组。因此,如果您在页面上有多个元素使用相同的 id,那么您将只获得具有该 id 的第一个元素,因此切勿将id用于多个元素。

于 2012-05-08T16:47:12.713 回答