CSS3自适应布局单位 —— vw,vh
1. 什么是视口?
在桌面端,视口指的是在桌面端,指的是浏览器的可视区域;而在移动端,它涉及3个视口:Layout Viewport(布局视口),Visual Viewport(视觉视口),Ideal Viewport(理想视口)。
2. 视口单位vw,vh
视口单位中的“视口”,桌面端指的是浏览器的可视区域(不包括工具栏和按钮的网页浏览器);移动端指的就是Viewport中的Layout Viewport。
根据CSS3规范,视口单位主要包括以下4个:
1. vw:1vw等于视口宽度的1%。
2. vh:1vh等于视口高度的1%。
3. vmin:选取vw和vh中最小的那个。
4. vmax:选取vw和vh中最大的那个。
vh and vw:相对于视口的高度和宽度,而不是父元素的(CSS百分比是相对于包含它的最近的父元素的高度和宽度)。
3. calc()的使用
calc(expression)
是css3的一个新增的功能,用来指定元素的长度。
calc()能给border、margin、pading、font-size和width等属性设置动态值,你可以给一个div元素,使用百分比、em、px和rem单位值计算出其宽度或者高度,比如说“width:calc(50% + 2em)”
calc()使用通用的数学运算规则,但是也提供更智能的功能:
- 使用“+”、“-”、“*” 和 “/”四则运算;
- 可以使用百分比、px、em、rem等单位;
- 可以混合使用各种单位进行计算;
- 表达式中有“+”和“-”时,其前后必须要有空格,如"widht: calc(12%+5em)"这种没有空格的写法是错误的;
- 表达式中有“*”和“/”时,其前后可以没有空格,但建议留有空格。