html - 将类用于单个元素而不是 ID 只是一种偏好,还是会变得复杂?

标签 html css css-selectors

在 CSS 中,我知道如果您要定位一个独特的元素,则使用 ID,并使用类来定位一组元素。我正在维护一个网站,在那里我必须清理一些代码 (html + css),我注意到以前的程序员没有对所有元素使用任何 ID,而是他甚至对唯一元素使用类。

那么,什么是可取的方法,我应该只使用类并遵循他的编码风格,避免对元素使用 ID,还是应该用 ID 替换它们并对适当的元素使用 ID。

在 css 中,根据我的理解,类也可以像 ID 一样使用,您可以只针对单个元素(例如 .footer vs #footer),这只是一个偏好问题。

#header { background: #ccc; height: 150px; }
#content { background: red; height: 200px; color: #fff;  }


<div id="header"><h1>Header Area</h1></div>
<div id="content"><h1>Content</h1></div>
<div id="header"><h1>Footer Area</h1></div>

注意 #header 在 id 中被提及两次,css 规则适用于这两个元素。

ID 的行为类似于类 (http://jsfiddle.net/79GsY/)

.header { background: #ccc; height: 150px; }
.content { background: red; height: 200px; color: #fff;  }
.footer { background: brown; height: 150px; }


<div class="header"><h1>Header Area</h1></div>
<div class="content"><h1>Content</h1></div>
<div class="footer"><h1>Footer Area</h1></div>

请注意这里没有使用 ID。

类的行为类似于 ID ( http://jsfiddle.net/qHEJd/)

请赐教。谢谢。

最佳答案

这是一个语义问题。您使用 ID 来标识元素,例如区分页面上的多个表单,或作为链接目标。它们对标记有意义。

有了类,你为事物设置了一个分类,你并没有真正赋予它们意义。这不像是将它们组合在一起或其他任何东西。

因此,如果页面上只有一个元素具有某个类,那就完全没问题了。这并不能使它“独一无二”。

关于html - 将类用于单个元素而不是 ID 只是一种偏好,还是会变得复杂?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16791380/

相关文章:

css - 压缩变量CSS选择器

javascript - 如何使用javascript获取警报消息中表中的文本框值

javascript - 在两个现有元素之间放置并适配 n 个元素

javascript - HTML 元素用 "z-index"或 "append"放在前面?

javascript - Kaltura 动态嵌入播放器 : *Uncaught ReferenceError: kWidget is not defined*

css - iPad 缩小打破居中

html - 如何防止表体滚动条偏移表头列?

html - 间距 CSS 动画

html - 使用 CSS::before 在列表链接前添加一个小图标

html - 基于字体粗细的 CSS 选择器?