2012-05-10 82 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