2011-06-07 128 views
1

我想要模擬選項卡,以便列表項中的第一個單詞總是獲得固定的寬度。我不喜歡這樣寫道:獲取屬性流血到兒童

<style> 
.tabbed { float: left; width: 5em; } 
</style> 

<ul> 
<li><span class='tabbed'>first</span> entry in my list</li> 
<li><span class='tabbed'>second</span> list entry</li> 
</ul> 

的方法效果比較好,只是如果我想做的事:

li { color: blue } 

它的顏色(這並不奇怪)適用於<li>但不給<span>。這意味着我將不得不:

.tabbed { color: blue } 

這不是非常乾燥。在我的情況下,我已經爲列表項目的不同類別做了大量的聲明,所以它很繁瑣和難看。

這是怎麼處理的?

+0

我沒有看到一個概率的例子用這個。你能展示更多你的風格嗎? – 2011-06-07 01:58:59

+1

除非'.tabbed'之前應用了顏色,否則它應該通過執行li {color:blue; } – Dave 2011-06-07 02:00:26

回答

2

默認情況下,該span應該如果li爲藍色變成藍色。

爲例

我想你一定有一些其他的CSS覆蓋它

萬一見http://jsfiddle.net/Q2UGE/你有別的東西覆蓋它,你不能改變,你也可以強制li .tabbed繼承它父

li .tabbed { color: inherit } 

http://jsfiddle.net/Q2UGE/1/對於該

+0

我可以看到你很正確。我需要弄清楚現在我的代碼還有哪些可能會發生。感謝您抽出時間來證明這一點。 – ekkis 2011-06-08 08:28:47

1

你不可能真的。你可以做的最好的是...

li, 
.tabbed { 
    color: blue 
} 
+1

'li .tabbed {color:inherit}'不會更好嗎? – Petah 2011-06-07 02:04:40

+0

@Petah它會是同樣的事情,我不確定它會更好。 – alex 2011-06-07 02:59:14

1
li, .tabbed { color: blue } 

那一點更幹。

1

像這樣:

li, .tabber { color: blue }