第 1 课

什么是 CSS 单位

理解绝对、相对与视口单位,作为布局与排版的基础。

CSS 长度值总是带有一个 单位(或 auto 等特殊关键字)。单位告诉浏览器:这个数字是相对于什么来计算的。

示例:

.card {
  padding: 16px;
  font-size: 1rem;
  width: 50%;
  gap: 2vw;
}

上面每个值最终都会在布局引擎里换算成像素尺寸,但 参考系 不同。

开发者最常用的三类单位

类别示例相对对象
绝对单位px设备像素(CSS px)
字体相对remem%Root 或父级字号
视口相对vwvh视口宽或高

生产环境里的 CSS 通常会混用这三类,这很正常。

单位在真实项目里为什么重要

单位不只是语法,还会影响:

  • 可访问性:以 rem 为主的排版比到处写死 px 更容易尊重用户浏览器字号设置。
  • 设计交付:设计稿常用 px,组件库却常用 rem 令牌。
  • 响应式行为:vw 和 clamp() 可以随视口缩放,而不必为每一步都写 media query。
  • 组件嵌套:em 和 % 依赖父级上下文,嵌套组件里容易踩坑。

单位 vs 媒体查询

Media query 在断点处切换规则;相对单位与 clamp() 则根据上下文连续计算尺寸。

两者都能解决响应式问题,但回答的问题不同:

  • Media query:「在这个断点应用另一套规则。」
  • rem/em/vw/clamp:「根据上下文计算尺寸。」

关键结论

换算设计值之前,先问:「这个尺寸是相对于什么的?」 px 相对屏幕,rem 相对 root,em 相对父级,vw 相对视口,% 相对包含块。

可以用 CSS 单位换算 / Clamp 生成器 输入 16px,观察同一数值在上下文变化时如何变成不同的 rem、em 和 vw。

想动手练习时,可使用 DevCove 相关工具——可选,不属于本课正文。

打开相关工具

返回课程概览