我在以下部分上需要大约85px
的填充顶部和填充底部。
所以我的部分如下所示:
我的body元素的font-size
为16px
,因此我将以下样式应用于填充部分:
.careers-highlight-contact-section {
padding-top: 5.31rem;
padding-bottom: 5.31rem;
}
我得到5.31的方式是85/16,但是现在当我检查计算值时,我看到填充顶部和底部底部实际上是
53px
。如何得出这个值?您可以在此链接here上看到此错误。
如果您将填充值从rem更改为em,那么您将获得正确的高度。为什么会这样呢?
最佳答案
如果您参考W3C规范,则rem
单位定义为:
等于根元素上“ font-size”的计算值。
在根元素的“字体大小”属性中指定时,“ rem”单位是指属性的初始值。
因此,根据我的评论,rem
的计算基于在根元素(即<html>
元素而不是<body>
元素)上声明的字体大小。只要在前者上声明font-size: 16px
,就会看到将计算出正确的填充。
关于css - rem没有输出相对于主体字体的值,em工作正常,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45613844/