css中em,rem的解析成px的原理及混用場景
阿新 • • 發佈:2018-12-23
em 單位如何轉換為畫素值:
所得的畫素值=當前元素的font-size*em值例如,如果一個div有18px字型大小,10em將等同於180px,即10 × 18 = 180。
CSS設定padding為10em
瀏覽器解析出來的值為180px(或接近它)
rem 單位如何轉換為畫素值
取決於頁根元素的字型大小,即html元素的字型大小所得的畫素值=根元素html font-size(預設是16)*rem值
例如,根元素的字型大小16px,10rem將等同於160px,即10 x 16 = 160。
注意:如果em所在換的元素沒有字型大小的設定,則是瀏覽器預設的16畫素(當然,這個值可以被瀏覽器自己所改變)
使用場景
一般來說,你需要使用em單位適用於在非預設字型大小的元素上的padding、margin、width、height和line-height等值,不建議用em來控制字型大小,一般使用rem單位的字型大小,使用rem單位建立統一可擴充套件的設計,媒體查詢也應該是rem單位