前端常用单位及其区别

331 阅读2分钟

在前端开发中,常见的长度单位有以下几种:

绝对单位

  • px (像素) :相对于显示设备的分辨率而定的单位。是最常用的绝对单位。

相对单位

  • em:相对于当前元素的字体大小。如果当前元素没有设置字体大小,则相对于父元素的字体大小。
  • rem (root em) :相对于根元素(<html>)的字体大小。
  • % :相对于父元素的属性值。

视口单位

  • vw (viewport width) :相对于视口宽度的1%。
  • vh (viewport height) :相对于视口高度的1%。
  • vmin:相对于视口宽度和高度中较小的那个的1%。
  • vmax:相对于视口宽度和高度中较大的那个的1%。

单位的区别

  1. px:像素是绝对单位,页面按精确像素展示。在移动端开发中,需要考虑设备像素比。
  2. em:相对单位,基准点为父节点字体的大小。如果自身定义了 font-size,按自身来计算;整个页面内 1em 不是一个固定的值。
  3. rem:相对单位,基准点为根元素(<html>)的 font-size。通常在 <html> 上设置 font-size: 62.5%,这样 1rem 就等于 10px。rem 可以很好地实现响应式布局。
  4. % :百分比是相对单位,相对于父元素的属性值。可用于实现弹性布局。
  5. vw/vh/vmin/vmax:视口单位相对于视口的宽度或高度。1vw 等于视口宽度的 1%,1vh 等于视口高度的 1%。vmin 和 vmax 分别取 vw 和 vh 中的最小值和最大值。这些单位可用于实现全屏效果。

如何选择单位

  1. 对于字体大小,优先考虑使用相对单位 rem。这样可以根据根元素的字体大小进行缩放。
  2. 对于元素的宽高,可以使用 %、vw/vh 等相对单位。这样可以根据父元素或视口的大小进行自适应。
  3. 对于边框、内外边距等,可以使用 px 或 rem。
  4. 对于定位,可以使用 px、% 或 vw/vh。
  5. 对于阴影、模糊等属性,使用 px 即可。

总之,在选择单位时要根据具体需求而定。相对单位可以提高页面的灵活性和响应性,而绝对单位则更加精确。在实际开发中,通常会结合使用多种单位。