2013-05-30 70 views
2

字體大小我知道emfont-size相對於父設置。如果我想設置相對於給定元素的重寫值的字體大小呢?CSS - 相對於覆蓋值

例如:

h1 { 
    font-size: 20px; 
} 

.smaller h1 { 
    font-size: (80 percent of the standard h1); 
} 

這可能嗎?

我要指出,我使用less這可能提供一些更多的靈活性。

+0

'em'不與級聯工作,所以你不能真正做到這一點與'em'值。 – BoltClock

+0

對,就是這個問題。 –

+0

有沒有辦法用純CSS做到這一點。 – cimmanon

回答

4

不確定EMS,我想你可以嘗試一下,看看會發生什麼。

如果你想利用較少的變量,你可以做這樣的事情:

@h1-font-size: 20px; 
h1 { 
    font-size: @h1-font-size; 
} 

.smaller h1 { 
    font-size: @h1-font-size * .8; 
} 
+0

感謝cjd,實際上我就是這麼做的,除非有更好的選擇。這有點乏味,爲我想縮小的所有元素製作一個變量。 –

+0

您可以爲所有較少文件定義一個基本字體大小變量,然後您可以將其乘以得到您的標題字體大小,因此您無需始終創建新變量。 – cjd82187

0

你不能。沒有辦法做任何事情相對於「重寫價值」。你應該以不同的方式設計你的造型。

將標題大小設置爲某些標題的像素的固定量以及相對於「覆蓋值」(通常未知且應該與瀏覽器相關)而言,將會很奇怪。

但是到您希望瀏覽器能夠有共同的默認值的程度,你幾乎可以使用HTML5 「expected rendering」 rules,因爲它們反映平時瀏覽器的做法相當好。據他們說,h1font-size: 2.00em,所以如果你想要一些大小設置爲80%,只使用1.6em