CSS 单位转换器帮助你在 px、em、rem、%、vw、vh 等 CSS 长度单位之间进行转换。根据基准值计算对应的其他单位值,便于响应式设计开发。
CSS 单位详解
px:像素,固定单位,不会随设置变化;em:相对于父元素字号的倍数;rem:相对于根元素(html)字号的倍数;%:相对于父元素的百分比;vw/vh:视口宽度/高度的百分比;vmin/vmax:视口较小/较大边的百分比。
单位选择建议
- 字体大小:优先使用 rem,便于全局调整
- 间距和内边距:使用 em 可以随字号自动缩放
- 响应式布局:使用 vw/vh 或百分比
- 固定元素:如边框、阴影等使用 px
- 最大/最小值:结合 min()、max()、clamp() 函数
常见转换
以 16px 为基准(浏览器默认字号):1rem = 16px;62.5% 技巧:设置 html { font-size: 62.5% } 后 1rem = 10px,便于心算;100vw = 视口宽度,常用于全宽元素。
FAQ
Q: 什么时候用 em,什么时候用 rem?
A: rem 相对于根元素,全局一致,适合整体布局和字号。em 相对于父元素,会层层继承,适合需要随父元素缩放的场景,如组件内部间距。
Q: vw 和百分比有什么区别?
A: vw 始终相对于视口宽度,% 相对于父容器宽度。父容器不是全宽时,两者结果不同。100vw 可能超出可视区域(因为滚动条)。
Q: 移动端适配该用什么单位?
A: 推荐使用 rem 配合 flexible.js 或 postcss-px-to-viewport。设计稿按 750px 宽出图,代码中使用 px 开发,构建时自动转换为 rem 或 vw。