如何设置rem的基本大小

Jer*_*mas 6 css

我有一个简单的问题,您在哪里声明rem计算的基础尺寸?

<body>
  <h1>Something</h1>
</body>
Run Code Online (Sandbox Code Playgroud)

我可以看到,font-size<body>设置为16像素和<h1>设置为3rem,但字体是在30像素渲染时,我期望48像素。父母可以重新定义基础吗?

Tim*_*imo 12

雷姆

表示根元素的字体大小(通常为<html>)。在根元素font-size中使用时,它表示其初始值(常见的浏览器默认值为16px,但用户定义的首选项可能会对此进行修改)。

资源


换句话说,更改元素字体大小html,的计算基础rem将更改。

  • “覆盖那个”......嗯,这就是在`html`上设置字体大小正在做的...... (3认同)
  • 有什么办法可以覆盖它吗?我知道这违背了目的,但如果我改变这一点,其他一些元素就会被搞砸。 (2认同)

dav*_*gr8 7

rem单位基于html元素的字体大小,而不是body元素。默认大小通常在html上 16px,但是不能保证,用户可以更改该默认值。通常的做法是在html上手动将字体大小显式设置为通常的16px值,然后在其他位置使用rems设置最终显示值。

但是,这种做法在用户希望或需要增加默认字体大小时会出现可访问性问题,因此您应设计页面和布局,以使其能够适应不同的大小。

https://developer.mozilla.org/en-US/docs/Web/CSS/font-size

rem值是相对于根html元素而不是父元素。换句话说,它使您可以相对方式指定字体大小,而不受父字体大小的影响,从而消除了复合。