最近搞移動端,真是被rem、em與px的換算要了老命了,看了不少文檔,似乎弄明白了,這不今天用又蒙圈了。
好多文檔上老是說用rem就給html設置font-size,用em就給body設置font-size
看了下bootstrap樣式表,html {font-size:62.5%;} body {font-size:14px;},其他樣式略哈,就講這兩個主要的。
可惜大姐長了這么大眼睛,從昨天到今天一直把em看成了rem,導致越算越郁悶……好不說了,解釋如下:
其實可以學習bootstrap的這種設置,因為在用到em和rem的時候互不影響,因為rem就是去參照你html的font-size,管你body設不設置,都與我沒關系。
一、那么如果你確定要使用rem單位,就按以下三個步驟來計算:
1、確定基數:一般10px,自己記住就行,不用寫進代碼里
2、html {font-size:百分數;} 百分數=基數/16
基數10 百分數62.5%
基數14 百分數87.5%
3、px換算rem 公式=想要的px值/基數
也就是說,當你設置 html {font-size:62.5%;},你想給容器里的文字設置字號14px,換算成rem就是14px/10——1.4rem 這樣子
(如果自己想要測試的話,拿火狐Firebug測試,因為Chrome下字號低於12px失效哈,如果想設置小於12px的字號,Chrome也有解決方案,自己百度就好)
二、如果使用em單位的時候,計算機就會自己去找你body的設置,才不會管你html是如何設置的呢
比如我們偉大的bootstrap給 body {font-size:14px;} 這樣設置后,如果我想要一個14px的外邊距,我就用14px/14px——1em 這樣啦。
以上是我自己總結的,如有錯誤,歡迎大家來指正哦~~
