2011-08-11 22 views
124

我有一個包含一些文本和格式的HTML頁面。我想讓它具有相同的字體系列和相同的文本大小,而忽略文本的所有內部格式。如何將全局字體應用於整個HTML文檔

我想爲HTML頁面設置全局字體格式。

我該如何做到這一點?

回答

188

您應該能夠利用星號和CSS中!important元素。

html * 
{ 
    font-size: 1em !important; 
    color: #000 !important; 
    font-family: Arial !important; 
} 

星號匹配所有內容(您可能在沒有html的情況下也可以離開)。

!important確保什麼都不能覆蓋您在此風格設置的內容(除非它也很重要)。 (這是爲了幫助你的要求,它應該「忽略文本的內部格式」 - 我認爲其他樣式不能覆蓋這些文字)

大括號內的其餘樣式就像任何其他樣式你可以做任何你想在那裏。我選擇改變字體大小,顏色和家族爲例。

+14

+1'!important'很有用,但如果它被過度使用,它可能會變得「有些怪物」。 – StuperUser

+10

同意。非常謹慎地使用。每次使用時,它都會失去一些價值...... – Amadiere

+1

+1爲'!important'提供了很大的用處。它必須始終用作最後一個選項。 – dShringi

9

使用以下的css:

* { 
    font: Verdana, Arial, 'sans-serif' !important;/* <-- fonts */ 
} 

* -selector意味着任何/所有元素,但顯然是在食物鏈的底部,當涉及到覆蓋更多具體選擇。

注意,!important -flag將呈現font風格爲*是絕對的,即使其他選擇已經被用來設置文本(例如,body或者一個p)。

+1

也許'!important'會阻止其他選擇器覆蓋設置。 – Quasdunk

+1

嗯,是的,'重要的'會阻止其他選擇器被覆蓋,只要他們不使用它。嘿。我會編輯我的文章並添加它 - 謝謝。 :-) – ninetwozero

+0

是的,沒錯。不太確定,但我認爲這種偏好還取決於您在何處放置聲明。如果你把它放在最底部,我也可以從上面更具體的選擇器中覆蓋'!important'。但是,這不是我想這裏的意思:) – Quasdunk

13

將其設置在您的CSS的身體選擇器。例如。

body { 
    font: 16px Arial, sans-serif; 
} 
+1

這可以用更具體的選擇器覆蓋。 – StuperUser

+0

它不適用於所有元素,例如:input type ='button' – RRTW

-1

試試這個:

我覺得
body 
{ 
    font-family:your font; 
    font-size:your value; 
    font-weight:your value; 
} 
+0

嗨anglimass,我格式化了你的代碼,如果你使用4個空格或'{}'按鈕,你可以在你的答案中以這種方式顯示示例代碼。 – StuperUser

24

最佳的做法是將字體設置爲正文:

body { 
    font: normal 10px Verdana, Arial, sans-serif; 
} 

,如果你決定改變它的一些元素,它可以很容易地overwrited:

h2, h3 { 
    font-size: 14px; 
} 
+0

如果你正在使用像基礎CSS這樣的框架,這不工作,沒有添加!重要。 –

4

您不應該使用* + !important。如果你想改變你的HTML文檔的某些部分的字體呢?你應該總是使用沒有重要的身體。僅當沒有其他選項時才使用!important

+0

Soooo你有沒有使用!important或*來製作全局字體的例子? – MasterProgrammer200

相關問題