标记/样式最佳实践:如何在CSS类上有效地分配样式规则?

Chr*_*son 6 html css paradigms stylesheet

假设我有一些HTML页面和相应的CSS文件.我想为一些元素添加圆角.我想在每个其他部分交替使用背景颜色.我想为每个部分标题添加悬停状态.所以等等 - 我保持造型,造型和造型.

在我看来,有三个极端,它涉及按类,按ID和层次结构在标记上分发CSS规则的"谁,什么,何时,何地,为什么以及如何".

极端#1:每个样式规则都基于ID.

极端#2:每个样式规则都基于一个类.

Extreme#3:每个样式规则都基于DOM层次结构.

显然,前端Web开发的禅宗将包括类重用与独特规则与层次结构的健康平衡,因为任何三个极端都会对浏览器性能,可维护性和代码大小造成严重破坏.我认为.还是我错了?如何判断何时需要新的.class或者您想要应用的样式规则可以安全地用于现有定义?两个#id规则何时相似,你应该将公共代码拉入一个类?你什么时候"分叉"一个类(有时你保留原文,并为所有偏离情况添加推导(在OOP术语中为"渗透"),有时将普通规则推入几个不相交的偏差中的每一个 - 显然这取决于偏差本身的性质(即所涉规则的数量)).是否存在使用纯粹分层规则的情况?

问题:这种辩论是否有任何经验法则?您的经验和/或建议是什么?是否有好的文章,资源,书籍,讲座("科技谈话"风格视频的奖励积分),或其他有关该主题的内容?我想将讨论基于几个关键点(尽管欢迎任何评论),没有特别的顺序:

  • 可维护性(易于阅读,修改和添加代码)
  • 干(不要重复自己)
  • 时间效率(上载时间;渐进式渲染)
  • 空间效率(标记和相关样式的组合大小)

Dam*_*son 3

帮自己一个忙,看看SASS

虽然编译 CSS 有利有弊,但在预编译 CSS 中使用实际变量、混入和帮助程序所带来的好处绝对值得至少考虑一下。