em/px/rem/vh/vw 区别
从 CSS3 开始,浏览器对计量单位的支持又提升到了另外一个境界,新增了rem、vh、vw、vm等一些新的计量单位
利用这些新的单位开发出比较良好的响应式页面,适应多种不同分辨率的终端,包括移动设备等
单位
在css单位中,可以分为长度单位、绝对单位,如下表所指示
| CSS 单位 | |
|---|---|
| 相对长度单位 | em、ex、ch、rem、vw、vh、vmin、vmax、% |
| 绝对长度单位 | cm、mm、in、px、pt、pc |
px
px,表示像素,所谓像素就是呈现在我们显示器上的一个个小点,每个像素点都是大小等同的,所以像素为计量单位被分在了绝对长度单位中
em
em 是相对长度单位,会继承父级元素的字体大小。相对于当前对象内文本的字体尺寸。如当前对行内文本的字体尺寸未被人为设置,则相对于浏览器的默认字体尺寸(1em = 16px)
rem
rem,相对单位,相对的只是HTML根元素font-size的值,和em不同的是rem总是相对于根元素,而不像em一样使用级联的方式来计算尺寸
vh、vw
vw,就是根据窗口的宽度,分成 100 等份,100vw就表示满宽,50vw就表示一半宽。(vw始终是针对窗口的宽),同理,vh则为窗口的高度
