rem和em和px vh vw和% 移动端长度单位

时间:2023-12-14 14:28:20

1.rem和em、px

首先来说说em和px的关系 em是指字体高度 浏览器默认1em=16px,所以0.75em=12px;我们经常会在页面上看到根元素写的font-size:65%; 这样em就成了16px*62.5=10em;这是显示在页面的字体大小是10px;

这样12px=1.2em,10px=1em,也就是说只需要将你的原来的px数值除以10,然后换上em作为单位就行了,

em的特点

em是个相对值 他会根据父级元素的大小而变化

但是如果嵌套了多个元素 要计算它的大小,是件很头疼的事情

这样的情况下,就出现了rem

rem的区别在于它是相对于根基元素的,因此不会被它的父类影响到

结论:之所以前端行业做移动端会普遍默认用rem或em,是因为可以通过js控制根元素(或者用@media)来达到适配各种分辨率的字体大小的效果

1.vh、vw和%

vh vw全称为Viewport Height和Viewport Width 意思就是视窗

很多情况下它们都是重叠的 各有优缺点 概括一下 就是

当处理宽度的时候,%单位更合适。处理高度的时候,vh单位更好。

(ps:比如你需要定位一屏内的一段文字,如果你用% 它计算的是你整个dom的高度,而vh计算的当前一屏的高度)