【发布时间】:2011-09-15 13:18:52
【问题描述】:
我看了这个presentation about object oriented css,但我想我要么没有正确理解,要么不明白使用OO CSS的好处:
示例 HTML:
<div class="border-1 bg-2 color-1 font-1">
</div>
示例 CSS:
/* borders */
.border-1 { border: 1px solid red; }
/* backgrounds: */
.bg-2 { background: yellow; }
/* other sections */
我看到能够快速更改多个元素的样式的优势,例如,能够切换配色方案将非常有用。
但实际上,您正在定义 HTML 内部的样式/外观,或者至少是其中的一部分。当然,这比使用style 属性要好,因为您仍然可以为一组组交换样式。
关键是,您在 HTML 中定义样式组,但我了解到您应该在 HTML 中创建“逻辑”组(例如 class="nav-item" / class="btn submit-btn")并且 CSS 完全应用样式和从“风格”的角度定义哪些元素属于一起(例如.nav-item, .submit-btn { background: red; })。
也许我完全误解了这个概念。但是,我仍然不知道构建 CSS 的好方法。
【问题讨论】: