px、rpx、em、rem、%、vw/vh/vmin/vmax

2023-01-03  本文已影响0人  CodeMT

px

px是绝对长度固定大小的单位,像素的计算针对(电脑/手机)屏幕的,一个像素就是屏幕上的一个点,即屏幕分辨率的最小单位。

px 也常被称为 CSS 像素,在 PC 中,通常认为 1px 的真实长度是固定的。

常用于: CSS像素 = 物理像素/分辨率

计算方式

所以 PC 端,一个CSS像素可以用0.76个物理像素来表示,而iphone6中 一个CSS像素表示了2个物理像素。此外不同的移动设备分辨率不同,也就是1个CSS像素可以表示的物理像素是不同的

注意:当浏览器页面缩放时,px 并不能跟随变大


rpx

rpx是微信小程序独有的、解决屏幕自适应的尺寸单位
可以根据屏幕宽度进行自适应,不论大小屏幕,规定屏幕宽为 750rpx
通过 rpx 设置元素和字体的大小,小程序在不同尺寸的屏幕下,可以实现自动适配,rpx是px的两倍,1px = 2rpx


em

相对长度单位,em 是相对于当前元素的父元素的 font-size 进行计算,如果当前元素未设置则相对于浏览器的默认字体尺寸。

<div class="a">A
  <div class="b">B
    <div class="c">C</div>
  </div>
</div>

<style>
  .a{ font-size:16px;}
  .b{ font-size:2em;} /* 相当于32px */
  .c{ font-size:1em;} /* 相当于32px */
</style>


rem

相对长度单位,CSS3 新增的一个相对单位,rem 是相对于根元素(html)的 font-size 进行计算,rem 不仅可设置字体大小,也可以设置元素宽高属性。

<div class="a">A
  <div class="b">B
    <div class="c">C</div>
  </div>
</div>
        
<style>
  html{ font-size:16px;}
  .a{ font-size:3rem;} /* 相当于48px */
  .b{ font-size:2rem;} /* 相当于32px */
  .c{ font-size:1rem;} /* 相当于16px */
</style>

百分比%

通常认为子元素的百分比完全相对于直接父元素:

<div class="a">
  <div class="b"></div>
</div>
<style>
  .a{ width:200px; height:100px; background-color: aqua; } 
  .b{ width:50%; height:50%; background-color: blueviolet; }
</style>

需要注意的是,如果设置了top、margin、padding等:


vw/vh/vmin/vmax

vw、vh、vmin、vmax 是一种视窗单位,也是相对单位。它相对的不是父节点或者页面的根节点。而是由视窗(Viewport)大小来决定的,单位 1,代表类似于 1%。

视窗(Viewport)是你的浏览器实际显示内容的区域—,换句话说是你的不包括工具栏和按钮的网页浏览器。

描述

vmin、vmax 用处、区别

移动端推荐使用(ios8、安卓4.4及以上才完全支持),比rem

总结

上一篇 下一篇

猜你喜欢

热点阅读