如何使用“EMS”更改网页字体大小(HTML)

使用Ems更改字体大小

在构建网页时,大多数专业人员建议您使用诸如ems,exs,百分比或像素等相对度量来设置字体大小(实际上是所有内容)。 这是因为你真的不知道某人可能会查看你的内容的所有不同方式。 如果您使用绝对度量(英寸,厘米,毫米,点或皮卡),则可能会影响不同设备中页面的显示或可读性。

W3C建议您使用ems作为尺寸。

但是有多大?

根据W3C的标准:

“等于它所使用的元素的'font-size'属性的计算值,当'font-size'属性本身的值出现'em'时就是例外,在这种情况下,它引用到父元素的字号。“

换句话说,ems没有绝对大小。 他们根据他们的位置来确定他们的规模。 对于大多数Web设计人员来说 ,这意味着他们在Web浏览器中,所以1em高的字体与该浏览器的默认字体大小完全相同。

但是默认大小有多高? 由于客户可以在其浏览器中更改其默认字体大小,因此无法100%确定,但由于大多数人不这么做,因此您可以认为大多数浏览器的默认字体大小均为16px。 所以大部分时间1em = 16px

用像素思考,用Ems来衡量

一旦您知道默认字体大小为16px,您就可以使用ems让您的客户轻松调整页面大小,但以像素为单位考虑字体大小。

假设你有一个这样的大小结构:

您可以使用像素来进行测量,然后使用IE 6和7的任何人都无法很好地调整页面大小。 所以你应该把尺寸转换成ems,这只是一些数学问题:

不要忘记继承!

但是,这并不是所有的ems。 你需要记住的另一件事是他们承担父母的大小。 所以如果你有不同字体大小的嵌套元素,你可能会得到比你期望的更小或更大的字体。

例如,你可能有这样的样式表:

p {font-size:0.875em; }
.footnote {font-size:0.625em; }

这将导致主文本和脚注分别为14px和10px的字体。 但是,如果您在段落中添加脚注,则最终可能会显示8.75px而非10px的文字。 试试吧,把上面的CSS和下面的HTML放到一个文档中:

该字体的高度为14px或0.875 ems。
本段有一个脚注。
虽然这只是一个脚注段落。

脚注文本很难在10px处阅读,在8.75px处几乎难以辨认。

因此,当您使用ems时,您需要非常了解父对象的大小,否则最终会在页面上出现一些非常奇怪的大小元素。