CSS 里的斜杠 /:你可能忽略的小细节

在日常写 CSS 时,很多人以为 / 只是数学除号,或者是可以随便用来分隔的符号。但实际上,它在 CSS 中有两种很重要的用法

  1. 作为语法分隔符,区分不同类型的值。
  2. 作为数学运算符,表示除法或比例。

我们一起来看看常见的场景。


1. 斜杠作为分隔符

有些 CSS 简写属性的语法,必须用 / 来区分不同部分,否则浏览器就分不清。

字体简写:字号 / 行高

css 复制代码
p {
  font: 16px/1.5 "Arial", sans-serif;
}

这里的 16px/1.5 表示 字号是 16px,行高是 1.5 。如果你把 / 去掉写成 16px 1.5,浏览器会直接报错。


圆角:椭圆半径

css 复制代码
.card {
  border-radius: 50% / 30%;
}

这里 / 的意思是 横向半径 50%,纵向半径 30% ,结果就是一个椭圆角。

如果没有 /,写成 50% 30%,那就成了「左上=50%,右上=30%,右下=50%,左下=30%」,完全不同的效果。


Grid 布局:区域范围

css 复制代码
.item {
  grid-area: 1 / 2 / 3 / 5;
}

这里的四个数字依次是:行起点 / 列起点 / 行终点 / 列终点

每个 / 把行和列的定义分隔开,否则就混淆了。


背景图:位置 / 尺寸

css 复制代码
.hero {
  background: url(bg.jpg) center / cover no-repeat;
}

这里 center / cover 的意思是:位置居中,尺寸为 cover

如果没有 /,浏览器会把 cover 当成颜色或其他属性,结果完全不对。


边框图像:三段式写法

css 复制代码
.box {
  border-image: url(border.png) 30 / 12 / 6 stretch;
}

这里的 / 分别把 slice / width / outset 分开。少一个斜杠就会解析出错。


2. 斜杠作为比例或除法

除了分隔符,/ 还可以真正做「数学」。

宽高比

css 复制代码
.video {
  aspect-ratio: 16 / 9;
}

这是最常见的用法,16 / 9 就等于「16:9 的宽高比」。


calc() 计算

css 复制代码
.col {
  width: calc(100% / 3);
}

这里 100% / 3 表示把父容器宽度平均分成三份。

要注意:只能用数字去除单位值 ,像 1rem / 2rem 是不合法的。


3. 小结

可以把 CSS 里的 / 记成两类:

  • 分隔符:用在简写属性里,把不同语义的值分开。

    • 代表场景:fontborder-radiusgrid-areabackgroundborder-imagemask
  • 比例/除法:用在需要算比例或分配空间的地方。

    • 代表场景:aspect-ratiocalc()

一句口诀:

👉 在简写里,/ 是语法规定的"隔板";在计算里,/ 是数学里的"除法"。

相关推荐
珍宝商店32 分钟前
前端老旧项目全面性能优化指南与面试攻略
前端·面试·性能优化
bitbitDown33 分钟前
四年前端分享给你的高效开发工具库
前端·javascript·vue.js
gnip2 小时前
实现AI对话光标跟随效果
前端·javascript
脑花儿2 小时前
ABAP SMW0下载Excel模板并填充&&剪切板方式粘贴
java·前端·数据库
lumi.3 小时前
Vue.js 从入门到实践1:环境搭建、数据绑定与条件渲染
前端·javascript·vue.js
二十雨辰3 小时前
vue核心原理实现
前端·javascript·vue.js
影子信息3 小时前
[Vue warn]: Error in mounted hook: “ReferenceError: Jessibuca is not defined“
前端·javascript·vue.js
卷Java4 小时前
CSS模板语法修复总结
java·前端·css·数据库·微信小程序·uni-app·springboot
gihigo19984 小时前
在CentOS上配置SVN至Web目录的自动同步
前端·svn·centos
珍宝商店5 小时前
优雅的 async/await 错误处理模式指南
开发语言·前端·javascript