Css 是否使用“调整字体大小”;em";还相关吗?

Css 是否使用“调整字体大小”;em";还相关吗?,css,browser,Css,Browser,那些在调整字体大小时使用em的人会知道,在处理嵌套元素时,它们可能是一个令人头痛的问题,并且必须进行px->em计算(以确保您的设计解释在@100%时是正确的)会消耗额外的时间 考虑到这些(无可否认是次要的)问题,并且考虑到主要浏览器在处理页面缩放/缩放等可访问性问题方面取得的最新进展,使用em调整字体大小是否仍然值得* *传统浏览器(IE6)支持被排除在外。虽然允许,但我始终觉得使用em调整字体大小有点荒谬。当用于调整字体大小时,这是一个相对的度量,我认为这只会给CSS增加混乱。如果你真的想给

那些在调整字体大小时使用em的人会知道,在处理嵌套元素时,它们可能是一个令人头痛的问题,并且必须进行px->em计算(以确保您的设计解释在@100%时是正确的)会消耗额外的时间

考虑到这些(无可否认是次要的)问题,并且考虑到主要浏览器在处理页面缩放/缩放等可访问性问题方面取得的最新进展,使用em调整字体大小是否仍然值得*


*传统浏览器(IE6)支持被排除在外。

虽然允许,但我始终觉得使用em调整字体大小有点荒谬。当用于调整字体大小时,这是一个相对的度量,我认为这只会给CSS增加混乱。如果你真的想给你的字体一个相对于其父字体大小的大小,使用百分比。(
字体大小:0.8em
相当于
字体大小:80%
,但百分比更敏感。)

否则,使用一个绝对单位。浏览器现在可以很好地处理和扩展它们。

Richard Rutter在“一个不同的列表”中发表的这篇文章仍然相关

如何在CSS中调整文本大小

如果你看看迭代,你会发现

文本大小(像素)-迭代1

结果是Safari和Firefox 仍然调整文本大小,而IE6和 IE7没有。可以在中调整文本的大小 Opera和IE7通过使用页面缩放 放大页面布局的工具, 内的文本和图像

ems中的文本大小–迭代2

结果表明,在所有 浏览器,中等浏览器中的文本 设置的渲染方式与 以像素为单位设置的文本。它也 演示如何在ems中调整文本大小 可以跨所有浏览器调整大小。 然而,IE6和IE7是不可接受的 夸大小与大 调整大小的文本的大小

车身尺寸百分比-迭代3

结果表明,两者之间存在差异 在大浏览器和小浏览器之间 IE6和IE7中的设置现在更少了 发音,意味着我们现在拥有所有 以相同的速度呈现文本的浏览器 中等大小 设置和调整文本大小 始终如一

以像素为单位设置线条高度–迭代4

结果表明,18px 行高由所有文本继承 在页面上…不幸的是 结果表明,18px谱线高度 当显示文本时,不会按IE6和IE7进行缩放 已调整大小,表示最大 设置将显示为挤压文本

在ems中设置线高度–迭代5

结果表明,, 一致调整大小的文本和 所有浏览器的行高度。 完美的或者几乎如此

Safari单空间问题–迭代6

结果显示,大小一致 跨所有行的文本和行高度 浏览器,包括等距 Safari2中的文本


即使这篇文章的日期是2007年,它仍然非常相关。设置字体大小不仅仅是设置em(或px)。

不要为屏幕样式表指定绝对长度单位的字体大小。它们跨平台呈现不一致,用户代理(如浏览器)无法调整其大小。在具有固定和已知物理特性(如打印)的媒体上使用此类装置进行样式设计

如果您将使用此方法,则无需计算

您可以将正文的字体大小设置为62.5%(即默认值16px的62.5%),这相当于10px或0.625EMs。现在,您可以在EMs中通过一个易于记忆的转换来设置字体大小,将px除以10

* 12px = 1.2EMs
* 13px = 1.3EMs
* 16px = 1.6EMs
* 8px = 0.8EMs
* etc…
这使得一切都非常容易记住,并且不需要转换表。当然,在使用EMs时,如果您在CSS中不明确,您仍然需要使用嵌套元素的转换表,这是一个完全不同的问题

但是76%要好得多,你可以用这个来计算

是的,它仍然相关:

IE6仍然被广泛使用,无法调整px中定义的字体大小。=>可用性问题。单凭这一点是不允许的

实际上,IE7和IE8也不使用像素调整文本大小。它们确实有页面缩放功能,但有些人更喜欢只增加文本大小

下面总结一下字体大小的优缺点

我个人喜欢ems。其他人,比如CSS-Tricks.com上的克里斯·科伊尔,喜欢像素。()

这实际上归结于个人偏好

关于SO的几乎相似或相关问题

EM问题

px到em的有用在线工具

将整个站点从px转换为em(此工具仍在开发中)

EM Calculator AIR应用程序(将在所有操作系统上运行)

Windows应用程序

(在底部)

像素到CSS的Ems转换表

emchart

关于这个问题的更多文章


在ems中调整字体大小实际上没有多大意义,因为1 em是字体大小的定义


在ems中调整其他元素的大小是非常关键的,因为这意味着当你决定改变字体大小时,你不会完全使用你所有的边距、填充和其他布局方面。

我从不在任何程序中使用字体的像素大小(我想Photoshop除外,因为默认情况下它只有像素大小)。我一直使用点大小(比如在Word中),并在CSS中使用
em
进行相对缩放。我设置主体
字体大小
,然后使用
em
缩放


也许我只是习惯于知道屏幕上和印刷品上的点尺寸有多大。我永远猜不出像素字体高度的大小,所以我不使用它。

Ems与保持y非常相关
Opera Mini 4.5 | 13px

Palm webOS 2.0 & webOS TouchPad | 14px

Opera Mini 7 | 17px

AOL 9 | 20px

Cybook Odyssey (e-book reader) | 21px

Blackberry 6.0 | 22px

NetFront NX | 23px

Kindle 32 | 26px