假设我有一些 HTML 页面和相应的 CSS 文件。我想为某些元素添加圆角。我想在其他所有部分上替换背景颜色。我想为每个部分标题添加悬停状态。如此等等——我一直在造型、造型、造型。
我发现存在三个极端,涉及按类、按 id 和按层次结构在标记上分发 CSS 规则的“谁、什么、何时、何地、为什么和如何”。
极端#1:每个样式规则都基于 ID。
极端#2:每个样式规则都基于一个类。
极端#3:每个样式规则都基于 DOM 层次结构。
显然,前端 Web 开发的禅宗将包括类重用、独特规则和层次结构之间的健康平衡,因为这三个极端中的任何一个都会对浏览器性能、可维护性和代码大小造成严重破坏。我认为。还是我错了?如何判断什么时候有新的.class
是必要的,或者您想要应用的样式规则可以是safely硬塞进现有的定义?什么时候两个#id
规则是否足够相似,以至于您应该将通用代码提取到一个类中?你什么时候“分叉”一个类(有时你保留原来的类,并为所有偏差情况添加派生(OOP 术语中的“渗透”),而其他时候则将通用规则推入每个不相交的偏差中 - 显然这取决于偏差本身的性质(即涉及的规则数量)。是否存在使用纯粹等级规则的特定情况?
问题:是否有任何经验法则来管理此类辩论?您的经验和/或建议是什么?是否有关于该主题的好的文章、资源、书籍、讲座(“技术讲座”风格的视频加分)或其他内容?我希望讨论以几个关键点为基础(尽管任何评论都是受欢迎的),没有特定的顺序:
- 可维护性(易于阅读、修改和添加代码)
- DRY(不要重复自己)
- 时间效率(加载时间;渐进式渲染)
- 空间效率(标记和相关样式的组合大小)
帮自己一个忙,看看SASS http://sass-lang.com/.
虽然编译 CSS 有利有弊,但在预编译 CSS 中使用实际变量、混入和帮助程序所带来的好处绝对值得至少考虑一下。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)