想要覆盖Bootstrap,但如何避免使用!important?

时间:2014-10-25 09:23:55

标签: css twitter-bootstrap

我正在使用Bootstrap并希望覆盖一些css:我在禁用状态时删除表单字段中的背景,边框和非允许指针。

这就是我的css的样子:

.no-extras {
  border: 0 !important;
  box-shadow: none !important;
  background-color: white !important;
  cursor: default !important;
}

但我知道使用它是一件坏事!重要的是。但是我应该如何更改代码以避免使用!important?我试图通过“input.no-extras”和类似的方式使其更具体,但到目前为止还没有运气......

请参阅此处的示例代码http://plnkr.co/edit/1AuszJ?p=preview

2 个答案:

答案 0 :(得分:5)

您仅在.no-extras中添加.form-group,以便您可以使用:

.form-group .no-extras {
    border: 0;
    box-shadow: none;
    background-color: red;
    cursor: default;
}

Plunker

或者您可以使用任何其他父类。

答案 1 :(得分:4)

您可以简单地通过选择器更具体来覆盖CSS。以更具体的方式选择相同标记的任何内容都足以覆盖现有定义。因此,例如,在目标类之前放置form引用就足够了:

form .form-control[disabled] {
  cursor: default;
}  

Plunker demo