1.px
px就是 pixel像素,相對於屏幕分辨率的長度單位;
2.em
相對單位,相對父元素的font-size,具有繼承的特點。
如當前父元素的字體尺寸未設置,則相對於瀏覽器的默認字體尺寸(瀏覽器默認字體是16px,)
特點:
1. 因為每一個父元素的font-size不同,em的值並不是固定的;
2. em繼承父級元素的字體大小
3.rem
rem是CSS3新增的相對單位,相對HTML根元素。
如果你沒有設置html的字體大小,就會以瀏覽器默認字體大小,一般是16px
html{font-size: 62.5%} /* 10 ÷ 16 × 100% = 62.5% */ body{font-size: 1.4rem;} /* 1.4 × 10px = 14px */
/*在根元素中定義了一個基本字體大小為62.5%(也就是10px。設置這個值主要方便計算,如果沒有設置,將是以“16px”為基准 )*/
優點:
只需要設置根目錄的大小就可以把整個頁面的成比例的調好
rem兼容性
除了IE8及更早版本外,所有瀏覽器均已支持rem
4.%百分比
%百分比,相對於父元素的百分比值
1、對於普通定位元素就是我們理解的父元素
2、對於position: absolute;的元素是相對於已定位的父元素
3、對於position: fixed;的元素是相對於ViewPort(可視窗口)
5.vw、vh、vmax、vmin
這四個單位都是基於視口
vw是相對(viewport)視口寬度而定的,長度等於視口寬度的1/100
假如瀏覽器的寬度為200px,那么1vw就等於2px(200px/100)
vh是相對(viewport)視口高度而定的,長度等於視口高度的1/100
假如瀏覽器的高度為500px,那么1vh就等於5px(500px/100)
vmin和vmax
是相對於視口的高度和寬度兩者之間的最小值
或最大值
如果瀏覽器的高為300px、寬為500px,那么1vmin就是3px,1vmax就是5px;
如果瀏覽器的高為800px,寬為1080px,那么1vmin也是8px,1vmax也是10.8px
瀏覽器高度900px,寬度為750px,
1vh=900px/100=9px,1vw = 750px/100=7.5px;很容易實現與同屏幕等高的框。
單位運算:
vmax,vmin,vw,vh都支持calc的各種單位和運算符
兼容性
https://www.caniuse.com/#search=vw
注意點:
1.盡量使用相對尺寸單位
使用相對尺寸單位計量,則在調整頁面的布局的時候,不需要遍歷所有的內部
DOM結構,重新設置內部子元素的尺寸大小。如果是隨着父容器或者是整體頁
面布局而改變尺寸,則使用%更好,如元素的高度和寬度設置;
2.字體尺寸盡量使用em,rem
方便保證保持統一性