1. 程式人生 > >css3中單位px,em,rem,vh,vw,vmin,vmax的區別及瀏覽器支持情況

css3中單位px,em,rem,vh,vw,vmin,vmax的區別及瀏覽器支持情況

定義 ie11 ring star ocl light for 無法 頁面

px:絕對單位,頁面按精確像素展示

em:相對單位,基準點為父節點字體的大小,如果自身定義了font-size按自身來計算(瀏覽器默認字體是16px),整個頁面內1em不是一個固定的值。

rem:相對單位,可理解為”root em”, 相對根節點html的字體大小來計算,CSS3新加屬性,chrome/firefox/IE9+支持。

(另外需註意chrome強制最小字體為12號,即使設置成 10px 最終都會顯示成 12px,當把html的font-size設置成10px,子節點rem的計算還是以12px為基準,所以網上很多文章提到的將html的font-size設為10方便計算不是那麽可取)。

rem在移動端應用可參考淘寶的頁面http://m.taobao.com (html的font-size通過動態計算獲取)

頁面基準320px(20px),html font-size值的計算:

[javascript] view plain copy
  1. var ele=document.getElementsByTagName("html")[0],
  2. size=document.body.clientWidth/320*20;
  3. ele.style.fontSize=size+"px"

註:需設置meta縮放比1:1
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, user-scalable=no" />

vw:viewpoint width,視窗寬度,1vw等於視窗寬度的1%。
vh:viewpoint height,視窗高度,1vh等於視窗高度的1%。
vmin:vw和vh中較小的那個。
vmax:vw和vh中較大的那個。

vw, vh, vmin, vmax:IE9+局部支持,chrome/firefox/safari/opera支持,ios safari 8+支持,android browser4.4+支持,chrome for android39支持

其它的單位還有:
%:百分比
in:寸
cm:厘米
mm:毫米
pt:point,大約1/72寸

pc:pica,大約6pt,1/6寸

ex:取當前作用效果的字體的x的高度,在無法確定x高度的情況下以0.5em計算(IE11及以下均不支持,firefox/chrome/safari/opera/ios safari/android browser4.4+等均需屬性加麽有前綴)

ch:以節點所使用字體中的“0”字符為基準,找不到時為0.5em(ie10+,chrome31+,safair7.1+,opera26+,ios safari 7.1+,android browser4.4+支持)

原文摘自-------http://blog.csdn.net/jyy_12/article/details/42557241

css3中單位px,em,rem,vh,vw,vmin,vmax的區別及瀏覽器支持情況