0

我有这个:

input[type=button]{ a LOT of stuff } /* File 1 */
.btn {what I actually want to use} /* Twitter bootstrap */

<input type="button" class="btn">

但是输入从 File1 而不是 TB 获取样式。如何忽略第一个样式?

编辑以获得更多解释:我要添加的类来自 Twitter Bootstrap CSS。我不想改变所有地方 .btn 及其变体(.btn-primary、.btn:hover、.btn-primary:hover),几乎有 200 个,每个都有很多项目。在每一行中添加 !important 是我想要避免的。我想告诉我的 html 整个文件很重要。

编辑#2: Maaaaaaaaaybe 我找到了答案:http ://thingsinjars.com/post/360/scoped-style/也许吧,因为我现在要测试它。

4

4 回答 4

1

除了 danp 的回答,ID 会比 class 有更大的优先级。因此,您可以尝试将其更改为:

<input type="button" id="btn">

#btn {
/*css rules*/
}
于 2012-05-10T16:39:30.810 回答
1

CSS 是分层的 - 请记住,最明确定义的规则是使用什么。

IE:如果您的按钮在几个 div 中,那么您定义包括父层次结构在内的样式,并且由于更具体,这就是应用的规则。

.btn {
   // base rules
   width: 80px;
   color: black;
}

.parent .block .user-form .btn {
   // my rules defined here will override anything set in .btn, and also pick up the base styles
   width: 100px;

}

因此,.parent、.block 等中的 .btn 将是 100 像素宽,但具有基本规则中定义的黑色。

于 2012-05-10T16:37:34.213 回答
0

加强层次结构。例如:

div .btn {}

body .btn {}

.container .btn {}

等等

请记住,您仍然必须覆盖以前设置的任何您根本不想要的规则。

希望有帮助:)

于 2012-05-10T16:39:20.117 回答
0

您是否尝试过:.btn { color: #ff0000 !important; }

于 2012-05-10T16:39:35.597 回答