px和em的区别是什么?
认识不同的单位
那么,它们之间有什么区别?
当您看到它们在实际应用中的效果时,很容易理解不同字号单位之间的区别。通常情况下,1em = 12pt = 16px = 100%。当您将基本字体大小(使用body CSS选择器)从100%增加到120%时,请看看会发生什么:
如您所见,当基础字体大小增加时,em和百分比单位都会变大,但像素和点不会变化。设置文本的绝对大小可能很容易,但对于访问者来说,使用可缩放文本更容易在任何设备或任何机器上显示。因此,在Web文档文本中,em和百分比单位更受欢迎。
Em与百分比
我们已经决定,点和像素单位并不一定最适合Web文档,这使我们只能使用em和百分比单位。理论上,em和百分比单位是相同的,但实际应用中,它们确实有一些微小的差异需要考虑。
在上面的示例中,我们将百分比单位用作基础字体大小(在body标记上)。如果您将基础字体大小从百分比更改为ems(即body {font-size: 1em;}),您可能不会注意到任何区别。接下来,让我们看看当“1em”是我们的主体字体大小时,以及客户端更改其浏览器中的“文本大小”设置时会发生什么(某些浏览器,如Internet Explorer提供此功能)。
当客户端的浏览器文本大小设置为“中”时,ems和百分比之间没有区别。但是,当更改设置时,差异非常大。在“最小”设置上,ems比百分比小得多,而在“最大”设置上,情况正好相反,ems比百分比大得多。尽管有人可能认为em单位正在按照其真正意图扩展,但在实际应用中,em文本缩放过于突然,最小的文本在某些客户机上几乎难以辨认。
1 em = 从文档字体大小中获取字体大小。它是相对的。
100% = 也从文档字体大小获取大小。
一般
12pt = 1em = 100% = 16px
在最佳实践中使用%,因为它相对于您的宽度,它会自动调整设备到设备。