原因:
1.IE無法調整px為單位的字體大小。
2.國外大部分使用em為字體單位。
px,em都為相對長度單位,
px是相對于顯示器分辨率而言的。
em是相對于當前對象內文本的字體尺寸,如果當前對象內文本字體尺寸未被人設置,則相對于瀏覽器的默認字體尺寸。
任意瀏覽器的默認字體都為16px,所有未經設置的瀏覽器都符合:1em=16px。那么12px=0.75em,10px=0.625em。為了簡化font-size的換算,需要在css中的body選擇器中聲明font-size=62.5%,這就使得em指變為16px*62.5%=10px,這樣 12px=1.2em,10px=1em,也就是說將原來的px數值除以10,然后換上em單位即可。
em有如下特點:
1.em的值并不是固定的。
2.em會繼承父級元素的字體大小。
因此需要強調:
1.body選擇器中聲明font-size=62.5%
2.將原來的px數值除以10,然后換上em為單位
3.重新計算那些被放大的字體的em值,避免字體大小重復聲明。
注意事項:
用以上方法的得到的12px(1.2em)漢字,在IE中并不等于直接用12px定義的字體大小,而是稍大一些。
需要在body選擇器中把62.5%換成63%就能正常顯示了。
原因可能是IE處理漢字時,對浮點的取值精確度有限。
以上所述是小編給大家介紹的徹底弄懂CSS中單位px與em的區別 ,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對PHP中文網的支持!
聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com