1.em
在做手机端的时候经常会用到的做字体的尺寸单位
说白了 em就相当于“倍”,比如设置当前的div的字体大小为1.5em,则当前的div的字体大小为:当前div继承的字体大小*1.5
但是当div进行嵌套的时候,em始终是按照当前div继承的字体大小来缩放,参照后面的例子。
2.rem
这里的r就是root的意思,意思是相对于根节点来进行缩放,当有嵌套关系的时候,嵌套关系的元素的字体大小始终按照根节点的字体大小进行缩放。
3.vh
vh就是当前屏幕可见高度的1%,也就是说
height:100vh == height:100%;
但是有个好处是当元素没有内容时候,设置height:100%该元素不会被撑开,
但是设置height:100vh,该元素会被撑开屏幕高度一致。
4.vw
vw就是当前屏幕宽度的1%
补充一句,当设置width:100%,被设置元素的宽度是按照父元素的宽度来设置,
但是100vw是相对于屏幕可见宽度来设置的,所以会出现50vw 比50%大的情况
5.100%
按照父节点的宽高设置比例 当高度为100% 当元素没有内容时候,设置height:100%该元素不会被撑开
6.当页面区域中含有百分比 rem px时计算
使用calc() 函数计算
例如一个div高度为100% 一个子div高度为10rem border为4px 另一个子div高度应该是 height:calc( 100%-10rem-8px )
设置兼容
height: 800px; /* 有些浏览器不支持给个默认值 */ height: -moz-calc( 100%-10rem-8px ); height: -webkit-calc( 100%-10rem-8px ); height: calc( 100%-10rem-8px );
注意前后空格必须要有