【发布时间】:2018-09-21 00:07:21
【问题描述】:
我一直使用class 属性,从不使用id 用于CSS 选择和样式。我知道id 必须是唯一的,但这似乎不是将它用于 CSS 的理由。
我使用 id 属性的唯一原因是用于 JavaScript 和表单标签。
我发现将 id 和 class 混合用于 CSS 会导致混淆,对我来说这是强制分离样式和行为的好方法。
是否有充分的理由将 id 用于 CSS 目的?有什么可以用id 实现而用class 做不到的事情吗?
我发现有用/有趣的评论
- 你可以对类说同样的话。有很多 JavaScript 确实(并且必须)以特定类的元素为目标。从行为的角度来看,在这些实例中更改类同样有问题。 - 亚伦西布
- ID 在级联中的特异性与类不同。 - 基尔罗伊
- 如果 ID 是没有重复的元素,尤其是在所有/大多数页面中都显示的内容时,使用 ID 进行样式设置是有意义的 - RichN
【问题讨论】:
-
找到了一篇与此相关的好帖子:csswizardry.com/2011/09/writing-efficient-css-selectors
-
这是那篇文章的引述:“需要注意的是,尽管 ID 在技术上更快、性能更高,但实际上并非如此。使用 Steve Souders 的 CSS Test Creator 我们可以看到ID 选择器和类选择器在回流速度方面几乎没有差异。”我不认为处理效率应该是您主要关心的问题,除非您处理大量数据(例如,您是 Google)。
标签: javascript html css