css - 为什么 Twitter Bootstrap 对于样式的变体具有重复的类名称?

标签 css twitter-bootstrap less

Bootstrap 类非常重复:

<a class="btn btn-large btn-block btn-primary">Simple button</a>

CSS 不能重写为:

.btn { /* CSS for btn */ }

.primary.btn { /* primary btn css */ }


.block.btn { /* block btn css */ }

/* etc... */

对于同一个按钮:

<a class="large primary block btn">Simple button</a>

这对我来说读起来好多了,仍然遵循 OOCSS [1],而且比较干燥。

我确信 BS 使用此约定是有充分理由的 - 谁能启发我?

[1] Why does Twitter Bootstrap require multiple classes for buttons?

最佳答案

我想我读到 Bootstrap 正在阻止自己使用现有元素中可能存在的通用命名类。

例如,在框架中拥有 .success 类被视为危险的,因为它可能会被用作自定义类。 .btn-success 不太可能发生冲突。

然而,Bootstrap 也与此相矛盾:它们有一个 .active 类,在我看来,这是一个极其常见的类名。

我更喜欢有更多可组合的类名,但它还没有真正让我着迷。但我不是在制作一个供数千人使用的框架,所以我知道什么!

关于css - 为什么 Twitter Bootstrap 对于样式的变体具有重复的类名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18834397/

相关文章:

html - 如何让 Polymer 像对待自己的图标一样对待我的自定义图标?

php - 在 concrete5 中调整内容 block 的大小

html - 艺术品内部图像

html - 内容不在 div 内

css - 如果定义了变量,则调用 mixin

jquery - 动态内容网址

html - 文本在带有输入字段的居中 div 中左对齐

javascript - 展开和折叠自举 Accordion

less - 为什么不:extend() compile with gulp-less?

html - 容器中的文本溢出