2011-10-04 46 views
3

考慮下面的例子:(live demo here爲什麼一些字體大小在瀏覽器中不一致?

HTML:

<div>Hello World</div> 

CSS:

div { 
    font-family: monospace; 
    font-size: 1em; 
} 

JS:

$(function() { 
    alert($("div").css("font-size")); 
}); 

在Firefox中,字體大小爲16像素,而在IE8中,字體大小爲13px。

爲什麼?

(I試圖改變font-familyArial,和Firefox和IE8都表示16px。)

+0

我不認爲這與jQuery有什麼關係,它是一個CSS和HTML問題。 – RobG

回答

2

每個瀏覽器都是不同公司的不同產品,他們對產品進行不同的編程,而字體大小就是其中之一。 From this link,1em等於當前字體大小,對於不同的瀏覽器可能不同,用戶也可以改變它,我已經在IE中將文本大小改爲最大,並且字體大小現在是21.33px。

使用em表示它依賴於很多事情,請使用%age來保持一致性。

1em對於不同的瀏覽器會有所不同(取決於它們的默認設置或用戶改變了它)。例如,你說IE的字體大小爲13像素,Firefox有16像素,當我檢查時,Firefox有13像素,IE有16像素,當我將文字大小改爲最大時,它被更改爲21.33像素(查看 - >文本大小)

2

由於em是一個相對單元。 em等於當前的字體大小。如果文檔的字體大小是16pt,則1em等於16pt。

MSIE似乎認爲monospace不需要像Arial那樣大(以像素爲單位)以便可讀。例如,12pt Times New Roman大約是10pt Arial。

如果您想要固定的字體大小,請使用font-size: 16pt

1

因爲它的實施選擇。例如,firefox有一個配置選項來設置Sans,Serif和Monospace的默認字體和大小。

+0

+1此外,在某些瀏覽器中,用戶可以設置覆蓋文檔中任何內容的最小字體大小。 – RobG

相關問題