我正在一个网站上工作,客户想要一些0.875em的标题。
我在网上查了一下,对于现代浏览器,基本em单元应该是16px。 好吧,如果我在chrome developper中将text-size设置为1em,则设置为12px而不是16px。
在开始时尝试设置body{font-size:100%}
。没有运气。
如何将其放回16px碱基?
谢谢!
答案 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。