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

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

过去很长一段时间,前端开发主要使用 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

相关推荐

字体,字号与尺寸对应表

了解字体的一样常识,不管做一份文档编辑还是网页开发,都是很有必要的。整齐划一,井然有序才终是大家之道。在文档编辑中,我们常用的是宋体,小四号字,新罗马字体,字母和数字用的是Arial字体,段落首行缩进2个字体,采用多倍行距中的1.25倍行距。

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

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

html中1pt等于多少px?

在印刷排版中,point是一个绝对值,它等于1/72英寸,可以用尺子丈量的,物理的英寸。但是在css中pt含义却并非如此。因为我们的显示器被分割为了一个个的像素,单个像素只能有一种颜色,要在屏幕上显示

CSS的deg是什么单位?

deg是CSS中的一个角度单位,表示度(Degress),一个圆共360度。在CSS中角度单位有:度(deg)、梯度(grad)、弧度(rad)。

px是什么单位?

px是pixel的缩写,是像素单位,也是为影像显示的基本单位,译自英文“pixel”,pix是英语单词picture的常用简写,加上英语单词“元素”element,就得到pixel,故“像素”表示“画像元素”之意,有时亦被称为pel(picture element)

CSS单位之pt和px的区别是什么?

字体大小的设置单位,常用的有几种:px、pt、em、rem等等。那么px和pt之间有什么区别呢?下面本篇文章就来给大家介绍一下px和pt区别,希望对大家有所帮助。

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

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

CSS尺寸单位

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

css中mm单位是什么?

mm代表毫米(Millimeter),又称公厘(或公釐),是长度单位和降雨量单位。1mm相当于1m的一千分之一(此即为毫的字义).10毫米相当于1厘米,100毫米相当于1分米,1000毫米相当于1米。

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

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

点击更多...

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