我正在嘗試在Web瀏覽器上爲網頁注入字體樣式。重寫字體樣式 - 頁面的每個元素
更改頁面的每個元素。
* {
font-size: 100%;
font-family: Arial!important;
}
在this question幾乎完成了這個伎倆,但是這種風格被覆蓋。我也想阻止這些覆蓋。使用JavaScript來解決方案也是可以的。
我正在嘗試在Web瀏覽器上爲網頁注入字體樣式。重寫字體樣式 - 頁面的每個元素
更改頁面的每個元素。
* {
font-size: 100%;
font-family: Arial!important;
}
在this question幾乎完成了這個伎倆,但是這種風格被覆蓋。我也想阻止這些覆蓋。使用JavaScript來解決方案也是可以的。
添加!important
到font-size
聲明,太:
* {
font-size: 100% !important;
font-family: Arial !important;
}
如果您在用戶樣式表使用這個(爲詞「試圖注入對網頁瀏覽器的網頁字體樣式」建議) ,那麼你的規則不能被覆蓋。
如果,另一方面,這只是一個作者樣式表的一部分,那麼可以由用戶樣式表覆蓋,並沒有什麼可以做的。它不會被瀏覽器默認樣式表覆蓋,因爲它們不使用!important
。對於其他作者樣式表,級聯規則意味着除了使用!important
的規則外,您不能被覆蓋。
在作者樣式表的規則,都具有!important
之間的鬥爭,更具體的勝利,具有特異性正是由CSS規範定義。在同樣具體的設置之間,最新的設置獲勝。
的選擇*
具有最低的特異性0,0,0,0。對於任何選擇器,您總是可以構建具有更高特異性的另一個選擇器。但是,元素的style
屬性中的CSS規則被視爲具有最高特異性。
所以,如果你知道哪些其他的CSS規則將被使用,你可以通過在你的選擇列表中的較高的特異性增加選擇擊敗他們。
非常翔實的答案。謝謝。 – pahan
真棒迴應! –
試着收緊你的CSS規則,比如'html * {blah; (我不知道這是否適用於這種情況,這就是爲什麼這不是一個答案 - 但是,嘿,讓它去吧)。 – Marty