我一直在想这个问题一段时间,并创建了一个像素版本和 em 版本来比较放大时的差异 - 没有。我读过的大部分内容都说“你需要将它们制作成 em 以实现可扩展性”,但我认为现在所有现代浏览器都可以正确扩展,这是一个有争议的问题。只要您将 CSS 中的基本字体大小设置为 ems/rems,以像素编写的填充和边距就会相应地缩放,就像它们是 ems 一样。我错过了什么吗?
问问题
1119 次
1 回答
2
EM(等)单位不适用于视口缩放 - 它们与当前字体大小相关。它们的设计目的是,如果我让我的字体非常大(因为我的眼睛很差)或非常小(因为我很年轻并且有鹰的眼睛),我希望文本周围的空白区域与文本。通常,人们不希望段落之间有 5 像素边距的 20 pt 文本,也不希望有 50 像素边距的 10 pt 文本。
例如,一个人想要段落之间有大约N行空白的文本。使用N em 垂直边距可实现与实际呈现的字体大小相适应的间距。
在现代网络中,em (et al) 单位仍然占有一席之地。但它们并不适合一切。本质上,您必须问自己,“这个大小是否应该随字体而变化?”
另外,如果您决定更改正文字体大小怎么办?许多其他布局值来自该正文文本大小。假设您决定默认浏览器查看大小 16pt-18pt 比您现在使用的 10pt 大小更有意义。如果你用 ems 设置了适当的东西,那么当你增加基数时,其他一切都会随之增加。
于 2014-01-17T19:50:03.373 回答