
为什么 1rem = 16px?能改吗?(以及如何优雅地调整它!)

如果你写 CSS 久了,你肯定遇到过 rem 这个单位,但有没有想过,为啥 1rem 就等于 16px? 这个数是怎么来的?能改吗?能改的话,怎么改得优雅又丝滑?
今天我们就来聊聊 rem,顺便教你如何“篡改”它的默认值,让你的布局更加顺手!
📌 1rem = 16px,真相竟然是……
rem 其实是 root em 的缩写,表示的是**根元素(html 标签)**的 font-size。
而大部分浏览器的默认 html font-size 是 16px,所以:
1rem = 16px
这就是 1rem = 16px 的原因,完全是浏览器的锅!
但是!既然它的本质是 html 的 font-size,那我们就可以 修改 html 的 font-size 来改变 1rem 的大小!😏
✂️ 我能改 1rem 的大小吗?(当然能!)
👉 方法 1:直接改 html 的 font-size
html {
font-size: 20px; /* 现在 1rem = 20px */
}
- 这样
1rem = 20px 0.5rem = 10px2rem = 40px
你可以随心所欲地改大小,但 直接改 html 会影响整个页面,需要慎重。
👉 方法 2:Tailwind CSS 里改 rem
如果你用 Tailwind CSS,可以修改 html 的 font-size:
html {
font-size: 18px; /* 现在 1rem = 18px */
}
如果你不想 Tailwind 乱改你的 font-size,可以在 tailwind.config.js 里加:
module.exports = {
corePlugins: {
preflight: false, // 关闭 Tailwind 默认的 CSS reset
}
}
👉 方法 3:局部修改某个 div
如果你不想影响整个网站,可以只改某个部分:
.special-div {
font-size: 12px; /* 这个 div 里的 1rem = 12px */
}
Tailwind 也可以:
<div class="text-[12px]">
<p class="text-[1rem]">这个 1rem 其实是 12px</p>
</div>
这样,你就能在不同部分用不同的 rem,不会影响全局。
🎯 高手必备:用 62.5% 让 1rem = 10px
前端高手喜欢把 html 的 font-size 设成 62.5%,你知道为什么吗?
html {
font-size: 62.5%; /* 62.5% × 16px = 10px */
}
这样 1rem = 10px,计算起来超级方便!
0.8rem = 8px1.2rem = 12px2rem = 20px4rem = 40px
是不是比 1rem = 16px 直观多了?不用再脑子里默算 16px * 1.5 这种难搞的数学题了!🙌
所以,很多设计师和前端团队都喜欢这个设定! 你也可以试试,看你的团队习不习惯~
💡 总结
✅ 1rem = 16px 是因为 html 的默认 font-size 是 16px
✅ 改 html 的 font-size 可以改变 1rem 的值
✅ 局部改 font-size 也能影响 rem 的计算
✅ 62.5% 让 1rem = 10px,计算起来更直观
🚀 你会怎么改 rem?
你是喜欢默认的 1rem = 16px,还是觉得 62.5% 更爽?或者你有自己的独门秘籍?欢迎留言讨论!🔥🔥🔥
订阅 FreeMac
每周精选:Mac 高效技巧、免费替代付费软件、开发者工具推荐。用对你的 MacBook,省钱 + 提效。