html – 每个浏览器的默认字体大小是16px吗?为什么?

前端之家收集整理的这篇文章主要介绍了html – 每个浏览器的默认字体大小是16px吗?为什么?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
CSS3为font-size定义了一个名为rem的新长度单位.这允许我们计算元素的font-size与根元素(html元素)的关系.

为了更容易地计算字体大小,我们通常假设根元素的font-size是16px,因此CSS通常会这样结束:

html { font-size:62.5%; } // 10px = 16px * 0.625

因此,例如,每个具有rem的元素高度相对于10px

p{ font-size : 1.4rem ;} // 14px = 10px * 1.4

我无法找到为什么我们假设我们可以乘以16px?我们如何相信每个浏览器都具有相同的16px基值?是否有关于预定义16px的标准描述?

参考

> MDN font-size
> W3C rem
> CanIUse about rem
> Github skeleton.css

解决方法

基本字体大小由浏览器中用户预定义的首选项确定.

几乎在每个浏览器中,16px都是比例字体的标准.这也可以根据字体是否使用衬线或是固定宽度字体而改变.

在大多数项目中,我通常将html元素预设为使用px值而不是%或em / rem值,以确保所有浏览器,屏幕和设备具有相同的字体大小并且页面上的元素保持相同大小和比例.

请记住,使用em使用父字体大小并与其成比例,而rem使用根html元素

例如:

html {
  font-size: 16px;
}
h1 {
  font-size: 2em; // 32px
}
p {
  font-size: 1em; // 16px
}
.someClass {
  font-size: .75em; // 12px
}
.someClass p {
  font-size: 2em; // 24px
}
.someClass p .test {
  font-size: 1.25rem; // 20px
}
<html>
<h1>2em Title Text</h1>
<p>Normal Element Text</p>
<div class="someClass">
  someClass font size
  <p>SomeClass with em</p>
  <p><span class="test">someClass p element with class test</span>
  </p>
</div>

</html>

猜你在找的HTML相关文章