2

我想知道人们对完全基于 EM 的想法是什么?就我个人而言,我几乎完全同意它,字体大小,布局,媒体查询等等。与用户的个人偏好相关是非常有意义的。

但是,当涉及到 javascript 时,似乎很难使用像素以外的任何东西。

例如,如果我想在屏幕尺寸大于某个尺寸时添加图像,我可以在 HTML 中执行此操作:

if (document.documentElement.clientWidth > 500) {
    document.write('<img src="whatever.jpg" alt="whatever" />');
}

或者,在 js 中,当屏幕到达媒体查询断点时,我可能想要更改某些内容(也许换掉一个元素)。但是,我最终会在 CSS 中得到 EM 和 js 中像素的奇怪混合,如果用户字体大小不是默认值,它们将不匹配。

那有意义吗?有人有什么建议吗?也许 EM 字体和 px 用于布局?但这失去了一些新兴市场的美丽......

很想听听你的想法!

谢谢

4

1 回答 1

0

用px没问题。您可以轻松计算 px-em。我建议阅读这篇关于您的问题的令人筋疲力尽的文章

使用 em 值最流行的方法是将 body 上的 font-size 设置为 62.5%。因为默认的浏览器字体大小是 16 像素,所以它是 10 像素(没有硬设置为 10 像素,不会级联)。使用 10 作为乘数比使用 16 容易得多。这样,您需要 18px 的字体大小?使用字体大小:1.8em。

那么,既然这只是使用像素值的抽象,为什么还要打扰所有这些 em 业务呢?三个可能的原因:

  1. IE 6 中的 ARE 可调整大小
  2. 与其他尺寸的关系(弹性宽度部位)
  3. Em 的级联就像一个 mo-fo

第一个是大的。如果您基本上想使用像素但不喜欢可访问性问题,那么 em 可能是您的选择。

css-tricks.com

于 2013-11-30T23:42:30.597 回答