【发布时间】:2016-03-20 23:40:45
【问题描述】:
我在我的项目中使用 bootstrap 3,我看到 bootstrap 中有 2 个 font-size 声明,如下所示:
Scaffolding.less
html { font-size:10px;}
body{ font-size : @font-base-size; }
而@font-base-size 在 variables.less 中定义为 14px
我一直在阅读一些内容,其中一种具有响应式字体大小的方法是将基本字体大小作为在 body 或 html 中定义的 px,然后将 rem 中的字体大小用于 body 中的不同组件,例如p、h1等
但我不确定,我在哪里定义基本字体,应该在 html OR body 中?
为什么bootstrap的html和body字体大小不同?
我的观察: 当我在 html 中以 px 定义某些字体大小时,只有 rem 东西适用于所有内容,将字体大小定义为 body 中的 px 不适用于 rem。
【问题讨论】:
-
我对这个论点的最大质疑是,在响应断点处调整字体大小和间距时,您可以在 html 元素上设置新的字体大小,并且您在 rem 中设置的每个测量值都会自动调整,而使用 px,您需要为要调整的每个测量值编写新规则。当然,即使使用 rem 也可能需要更多的调整,但是通过巧妙的计划,您可以获得大量的免费比例缩放。将某些框间距测量值与类型、更轻的代码和更少的复杂性/更高的可维护性联系起来,对我来说显然是对 rem 的胜利。
-
@Jinu - 我也在做同样的事情。对不起,如果有任何混淆。我的意图是在 html 或 body 上使用像素字体大小(不管怎样),并使用 rem 单位定义其余部分。我的疑问是,为什么在正文中定义基本字体大小(以像素为单位)不起作用,而在 html 中定义确实有效。为什么 bootstrap 在 html 和 body 中有不同的字体大小?
标签: css twitter-bootstrap fonts responsive-design font-size