当一个元素应用1em时,它会采用浏览器的默认值(通常为16px)或其父元素的字体大小值,对吧?但是我注意到,如果我在 h1
元素中使用类似于 margin-top: 1em
的东西(没有使用重置样式表,因此,h1 被设置为 font-size: 32px
),那么1em等于32px
,即使它的父元素设置为font-size: 16px
。
然而,使用类似于font-size: 100%的东西可以解决这个差异问题。
我错过了什么吗?
h1
的浏览器提供的字体大小为32像素,所以产生的边距为32像素。font-size: 100%
的东西可以解决这种不一致。
通过在元素上设置font-size: 100%;
或font-size: 1em;
,您告诉它使用其父级的字体大小的100%,因此在其他任何地方设置1em
作为长度将遵循该100%。1em
等于 所讨论的元素 的字体大小。因此,当与边距一起使用时,它将等同于应用边距的元素的字体大小。
h1
和h2
中可能不同的情况。 - Gangula