【问题标题】:Bootstrap - why do I need two classes to style a button?Bootstrap - 为什么我需要两个类来设置按钮样式?
【发布时间】:2014-04-06 01:31:31
【问题描述】:

这是在 Bootstrap 中设置按钮样式的方式:

<button class="btn btn-default">Do Something</button>

必须应用两个类才能获得一个按钮。我在 Bootstrap 的其他部分也看到了类似的模式:

<i class="glyphicon glyphicon-ok">

我想减少在我的 HTML 中使用的类的数量。一种方法是使用 less 混合:

.btn-default {
    .btn;
    .btn-default;
}
.glyphicon-ok {
    .glyphicon;
    .glyphicon-ok;
}

那么我的HTML可以简化成这样:

<button class="btn-default">Do Something</button>
<i class="glyphicon-ok">

这是个好主意吗?将普通类(.btn.glyphicon)与特定类(.btn-default.glyphicon-ok)结合起来,我是否会失去一些东西?

【问题讨论】:

    标签: html css twitter-bootstrap twitter-bootstrap-3


    【解决方案1】:

    您的问题类似于此站点上的another one,其中Andres Ilich 具有answered

    这是因为 OOCSS 原则。从元素中分离某些样式可以更好 代码和样式重用以及快速修改任何对象的更简单方法 你的CSS。例如,您的主要 .btn 类具有样式 您的按钮默认为灰色,因此所有按钮都带有 .btn 类将具有相同的样式,但您可以使用预定义的样式 可以扩展同一个按钮类以支持多种不同的颜色 无需编写默认 .btn 属性的方案 一遍又一遍,所以它更容易维护。如果你看一下css .btn-warning 和所有其他按钮状态类,您可以看到 他们只是定义按钮的颜色和样式并跳过需要 再次重写按钮类;

    .btn-warning:hover, .btn-warning:active, .btn-warning.active, .btn-warning.disabled, .btn-warning[disabled] {
        background-color: #F89406;
    }
    

    这使得样式表更易于阅读、更短、更简洁。

    【讨论】:

    • -1 .. 您逐字复制/粘贴此答案(并获得了 10 个赞,多么不公平)
    • @user2129623 虽然我倾向于同意所做的事情是不公平的,但如果该操作符合许可条款(显然,作者做了通过说明来源做出诚实的归因尝试;因此,我已将其编辑成更好的形状而没有升级)。如果您被授权编辑或标记不合适的帖子等选项,请尽量确保我们的投票不会误导读者其内容,但感谢您在评论中给出解释。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-09-23
    • 2023-04-01
    • 2019-01-13
    • 2020-01-20
    • 2014-03-31
    相关资源
    最近更新 更多