关于height:100%和height:100vh的区别


1.em

在做手机端的时候经常会用到的做字体的尺寸单位

说白了 em就相当于“倍”,比如设置当前的div的字体大小为1.5em,则当前的div的字体大小为:当前div继承的字体大小*1.5

但是当div进行嵌套的时候,em始终是按照当前div继承的字体大小来缩放,参照后面的例子。

2.rem

这里的r就是root的意思,意思是相对于根节点来进行缩放,当有嵌套关系的时候,嵌套关系的元素的字体大小始终按照根节点的字体大小进行缩放。

参照后面给的demo

3.vh

vh就是当前屏幕可见高度的1%,也就是说

height:100vh == height:100%;

但是有个好处是当元素没有内容时候,设置height:100%该元素不会被撑开,

但是设置height:100vh,该元素会被撑开屏幕高度一致。

4.vw

vw就是当前屏幕宽度的1%

补充一句,当设置width:100%,被设置元素的宽度是按照父元素的宽度来设置,

但是100vw是相对于屏幕可见宽度来设置的,所以会出现50vw 比50%大的情况





恭贺新春



em 继承父元素的字体大小,来变大或变小,多层嵌套字体变化



字体大小 1.2 * 14(父元素body) = 16px

字体大小 1.2 * 16(父元素em) = 20px

字体大小 1.2 * 20(父元素em-son) = 24px





rem 继承根节点元素的字体大小,来变大或变小,多层嵌套字体不变化



字体大小 1.2 * 14(根节点html) = 16px

字体大小 1.2 * 14(根节点html) = 16px

字体大小 1.2 * 14(根节点html) = 16px





rem 也可作为固定长度单位设置宽高等



宽:14 * 10 = 140px

高:14 * 10 = 140px



vh,vw 屏幕可见区域的高度,宽度的1%



宽:屏幕宽度的50%

高:屏幕高度的50%






恭贺新春



em 继承父元素的字体大小,来变大或变小,多层嵌套字体变化



字体大小 1.2 * 14(父元素body) = 16px

字体大小 1.2 * 16(父元素em) = 20px

字体大小 1.2 * 20(父元素em-son) = 24px





rem 继承根节点元素的字体大小,来变大或变小,多层嵌套字体不变化



字体大小 1.2 * 14(根节点html) = 16px

字体大小 1.2 * 14(根节点html) = 16px

字体大小 1.2 * 14(根节点html) = 16px





rem 也可作为固定长度单位设置宽高等



宽:14 * 10 = 140px

高:14 * 10 = 140px



vh,vw 屏幕可见区域的高度,宽度的1%



宽:屏幕宽度的50%

高:屏幕高度的50%



————————————————
版权声明:本文为CSDN博主「web_blog」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_43248623/article/details/107790477