为什么大厂前端现在越来越少用 px 和 rem?

更新日期: 2025-08-23阅读: 44标签: 单位

过去很长一段时间,前端开发主要使用 px 作为尺寸单位。px 是固定单位,写多少就是多少,显示效果稳定,但缺乏灵活性。后来,为了适应不同屏幕,rem 逐渐流行起来。rem 基于根字体大小变化,能够实现整体缩放,比 px 更适应响应式布局。很多团队用它来做移动端适配。

但你如果去看一些大型互联网公司最新的前端项目,会发现一个明显变化:px 和 rem 的使用正在减少,取而代之的是 vw 和 clamp() 这样的新方案。

这不是盲目追新,而是因为前端开发的需求变了。我们不再满足于“在不同宽度的设备上显示正常”,而是追求“在任何尺寸下都显示舒适”。px 和 rem 虽然能用,但已经不够用了。

px 是固定值,无法根据屏幕自动调整。rem 虽然可以缩放,但通常需要借助媒体查询设置不同断点下的根字号,效果是阶梯式变化,不够平滑,维护起来也麻烦。

于是,vw 和 clamp() 开始被广泛采用。


什么是 vw?

vw 是“视口宽度”单位。1vw 等于屏幕宽度的 1%。也就是说,如果你的字体大小设置为 5vw,那么它会随着浏览器窗口宽度的变化自动调整。

例如:

.title {
font-size: 5vw;
}

这样做的好处是,元素尺寸能够实时、平滑地变化,没有跳跃感,视觉上更连贯。

但 vw 也有问题:它太“自由”了。在大屏幕上,字可能会大得离谱;在小屏幕上,又可能小得看不清。我们需要一个办法,让它既能自动缩放,又不超出合理范围。


clamp() 函数解决了这个问题

clamp() 是 css 中的一个函数,它接收三个参数:最小值、首选值和最大值。它的作用是让数值在一个范围内动态变化,不会太大也不会太小。

基本写法是:clamp(最小值, 首选值, 最大值)

举个例子,如果我们希望一个标题字号在移动端不小于 20px,在桌面端不大于 40px,中间按视口宽度自适应,可以这样写:

.title {
  font-size: clamp(20px, 5vw, 40px);
}

这意味着:

  • 字体最小为 20px,

  • 理想状态是屏幕宽度的 5%,

  • 最大不超过 40px。

这样一来,既保持了流畅的缩放效果,又避免了极端情况下的显示问题。

这种写法不仅代码更简洁,而且省去了多个媒体查询的维护成本。以往需要写好几段代码才能实现的效果,现在一行就能搞定。


px 和 rem 并没有完全被淘汰

px 仍然适合一些需要绝对固定的尺寸,比如边框粗细、阴影大小等。rem 在一些内部系统、文档类网页中依然实用,因为它们对精细度的要求不如用户端产品高。

但对于面向广大用户的产品,尤其是强调视觉和交互体验的网站或应用,vw + clamp() 的组合正在成为更主流的选择。它让UI真正实现了“流动布局”,视觉更自然,开发也更高效。


总的来说,前端单位的使用经历了从 px 到 rem,再到 vw 和 clamp() 的演变。这不仅是技术实现的变化,更反映了我们对于“响应式”理解加深——从适配几个断点,到迎接任意尺寸的屏幕。


本文内容仅供个人学习/研究/参考使用,不构成任何决策建议或专业指导。分享/转载时请标明原文来源,同时请勿将内容用于商业售卖、虚假宣传等非学习用途哦~感谢您的理解与支持!

链接: https://fly63.com/article/detial/12889

理解并使用CSS3中的单位rem vh vw vmin vmax

rem vh vw vmin vmax做为CSS3中的新单位,对CSS3的单位的使用了解是非常重要的,也许你会遇到一个问题可以通过css的这些单位得到解决,同时对于rem,vh和vw,百分比等都是我们做自适应网站常用的方法。

常用长度单位PX/EM/PT/百分比转换公式与对照表

PX、PT、EM、ex和in等都是我们常用的长度单位,尤其在网页的字体大小中经常用到。但是你知道PX、PT和EM之间是如何进行准换的吗?这里为大家找到了一个px、pt、em和percent大小转换的一个表格

CSS中字体单位:px、em、rem和%

对于绘图和印刷而言,“单位”相当重要,然而在网页排版里,单位也是同样具有重要性,在CSS3普及以来,更支持了一些方便好用的单位(px、em、rem…等),这篇文章将整理这些常用的CSS单位,也帮助自己未来在使用上能更加得心应手。

被误解的 em 单位

em 单位往往被认为是相对于父元素的 font-size 大小来进行计算的。例如一个元素的父元素设置了如下的 font-size:而其中的 div 设置了 font-size 设置了 1.5em :那么 div 元素的 font-size = 20 * 1.5 = 30px.

CSS尺寸单位

前端开发过程中,尺寸单位是我们必须用到的,下面我们对css中常见的几种尺寸单位px,em,rem,rpx进行逐一介绍 在这之前,需要先对几个概念进行普及介绍

CSS角度单位:deg、grad、rad、turn

度(Degress)。一个圆共360度;梯度(Gradians)。一个圆共400梯度;弧度(Radians)。一个圆共2π弧度;转、圈(Turns)。一个圆共1圈

CSS3单位

像 px、rem、em、% 这样的长度单位大家肯定都很熟悉,前者为绝对单位,后者为相对单位。CSS3 又引入了新单位:vw、vh、vmin、vmax。下面对它们做个详细介绍。

高清屏下canvas重置尺寸引发的问题

我们知道,清空canvas画布内容有以下两个方法。 第一种方法是cearRect函数:二种方法就是用原值重新设置一下canvas的宽(或者高)第二种方法可以起作用,是因为canvas的一个特点:

CSS单位之间的关系

像素 (px) 是一种绝对单位(absolute units), 因为无论其他相关的设置怎么变化,像素指定的值是不会变化的。其他的绝对单位如下:mm, cm, in: 毫米(Millimeters)

css 角度单位有哪些?

CSS角度单位有:deg、grad、rad、turn;下面本篇文章给大家介绍一下这些CSS角度单位。度(Degress)。一个圆共360度;梯度(Gradians)。一个圆共400梯度;弧度(Radians)。一个圆共2π弧度;转、圈(Turns)。一个圆共1圈

点击更多...

内容以共享、参考、研究为目的,不存在任何商业目的。其版权属原作者所有,如有侵权或违规,请与小编联系!情况属实本人将予以删除!