2012-05-10 80 views
0

设置我有这样的:删除CSS标记名称

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

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

但输入从File1中获取,而不是风格的结核病。如何忽略第一种造型?

编辑更多解释:我想添加的课程来自Twitter Bootstrap CSS。我不想改变地方.btn及其变体(.btn-primary,.btn:hover,.btn-primary:hover),这里有近200个,每个都有很多项目。在每一行中添加重要的是我想要避免的。我想告诉我的HTML,整个文件很重要。

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

回答

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; 

} 

因此,.btn里面的.parent,.block等宽度是100px,但是颜色是黑色的,如基本规则中定义的。

+1

好答案+1。 –

0

加强层次结构。 e.g:记住

div .btn {} 

body .btn {} 

.container .btn {} 

熊,你仍然要覆盖先前已设定,你不希望在所有但任何规则。

希望帮助:)

1

除了danp的回答,ID会比类更高的优先级。出于这个原因,你可以尝试将其更改为:

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

#btn { 
/*css rules*/ 
} 
+0

不能这样做,因为btn来自twitter引导,我想在同一页面的多个按钮中使用.btn。 – Nurdagniriel

0

你试过: .btn {颜色:#FF0000重要; }

+0

!重要的是'最后的手段',要非常非常节俭地使用,如果有的话。 – dmp

+0

我同意,但它有助于确定问题的存在。我不建议用这个标题来制作。谢谢。 – Sean

+0

我想过了。问题在于.btn在twitter bootstrap css中,并且定义了超过190个位置(.btn,.btn-primary等)。我想避免改变这个文件。 – Nurdagniriel