我正在寻找人们处理不可避免的需要改变或以其他方式调整CSS类以适应新的HTML元素的策略。我经常在这种情况下发现自己,所以我希望其他人分享我的痛苦,并可以在这里提出建议。如何处理需要更改CSS类名称
想象一下,您有一个产品的表格,其语义类名称很好products
。这是在你的样式表中适当的样式。几个月后,老板会要求您在网站上创建一个员工名单,“名称与产品列表完全一样”。
这立即引发了一个重要的问题:什么叫新员工表。我能想到的唯一选择是:
- 给它的类名
products
以及。这是最快的解决方案,但是破坏了语义。命名对于未来的开发者尤其没有多大意义。 - 将类名更改为可包含产品和员工列表的内容。这将否定标记与风格分离的效用,因为HTML需要改变。此外,我想不出一个非表象类别的名称,可以想象应用于产品和的员工名单。
- 引入一个新的类名并编辑CSS文件,使得
.products { ... }
变成.products, .staff { ... }
和.products thead th.number { font-weight: bold }
变成.products thead th.number, .staff thead th.number { font-weight: bold }
等。另一种丑陋的解决方案随着时间的流逝只会变得更加复杂。
这里采取的最佳行动方案是什么?
N.B.我相信这个问题很容易用像LESS这样的框架解决(我没有亲自使用它),但是这个解决方案更多的是作为'掩饰'而不是实际的补救措施。
啊,那是我无法想起的第四种选择!这不是我特别喜欢的解决方案。它打破了DRY原则,并且再次否定了分离内容和样式所带来的好处。然而现在它是最有吸引力的解决方案... – 2012-02-22 17:06:33
这也是一个更多未来的证明。 – 2012-02-22 17:07:40