1em未设置为16px

时间:2013-09-09 19:52:42

标签: css font-size em

我正在一个网站上工作,客户想要一些0.875em的标题。

我在网上查了一下,对于现代浏览器,基本em单元应该是16px。 好吧,如果我在chrome developper中将text-size设置为1em,则设置为12px而不是16px。

在开始时尝试设置body{font-size:100%}。没有运气。

如何将其放回16px碱基?

谢谢!

3 个答案:

答案 0 :(得分:10)

这是因为Chrome的默认字体大小是12px。您应该将body和/或html元素的font-size设置为16px,如下所示:

html, body {
    font-size: 16px;
}

这假设没有更改此字体大小的父元素,因为em是设置大小的最近父级的相对大小。如果您想要一个绝对大小的字体,请检查rem,但旧版浏览器不支持此功能,因此您需要提供后备广告。

答案 1 :(得分:2)

要解决您描述为客户端请求的内容,请在这些标题上设置font-size: 0.875em。想要使用缩小的字体大小来标题很奇怪,但也许有一个解释。

这与你的1em等于16px的想法无关。 em单位用于font-size时,代表父元素的字体大小。没什么,没什么。

您可能需要询问客户他们真正想要的是什么。

答案 2 :(得分:2)

解决了问题。

em中的字体大小是附加的。

问题是,如果基数是16px并且我将一个孩子设置为0.875em,而另一个孩子也设置为0.875em,那么它将把大小设置为0.875em的0.875em为16px。

您必须将直接父级设置为所需的确切大小。所以在我的情况下,将父设置为16px,以重置。然后直接孩子到0.875em。