我目前正在开发一个网站,我无法弄清楚为什么IE10中的文字显示比Chrome中更大。 (我确保两个浏览器都设置为100%缩放 - 不多也不少。)
我的CSS中有一个重置:body { font-size: 1em; }
。在Chrome(v27.0.1453.116 m)中,这会按预期显示 - 如果我将CSS中的规则更改为font-size: 100%;
或font-size: 16px;
,则不会发生任何明显变化。对我来说,这表明在Chrome中,1em = 16px。但是,比例字体大小(em
和%
)在IE中显示得更大,似乎是1em = 21px。
我有两个图片显示body { font-size: 1em; }
时的差异,但由于我还没有10个声誉,我无法发布完整的网址。但是,它们是在imgur上托管的,它们的文件名如下:
font-size: 1em;
:
font-size: 1em;
:
如果我使用font-size
设置px
,那么我会得到一致的结果 - Chrome和IE10都会一致显示。但是,如果使用px
字体大小,这些日子对我来说就是不太受欢迎的做法。
您可以在this jsFiddle I made中看到HTML和CSS。我包含了所有可能有点不必要的CSS,但我认为提供更多的上下文而不是更少的内容会更好。
任何人都可以帮我弄清楚为什么IE10显示1em
比Chrome更大,我能做些什么呢?
非常感谢。
编辑 - 数据一发布这个精心设计的问题,我就会知道发生了什么。我已将IE缩放设置为100%,但IE也有一个“文本大小”选项,由于某种原因,它被设置为“最大”。将其设置为“中”可以解决问题。
答案 0 :(得分:13)
我“解决”了我自己的问题,因为我是个傻瓜。
IE10在“查看”菜单下有两个设置,可以更改显示内容的大小。我确保将“缩放”设置设置为100%,但完全忽略了“文本大小”设置,该设置被设置为“最大”。将其设置为“中等”修复了我的问题,并使IE和Chrome显示相同。
答案 1 :(得分:2)
以像素为单位的em的大小与字体类型和&你正在使用的大小,屏幕的分辨率(取决于操作系统,浏览器),以及可能的其他操作系统和浏览器设置 - 例如“显示字体+ 10%”可能会改变em值。
根据Rudu的post。