(抱歉我的英语不好)
昨天,我在使用@ font-face时出现了一个很大的字体大小(200px)的问题:我的一个div在Firefox和Chrome中呈现的方式不同。经过一些研究,我了解到这是由于Firefox和Chrome计算出的行高不同,指定的行高可以解决我的问题。
但是,令我惊讶的是,即使我什么也没做,当我在安全模式下启动FF时,问题就解决了! (它渲染类似于Chrome)所以我想知道那是因为我已经定制了FF太多了?我创建了一个新配置文件(没有插件,禁用所有插件,将所有设置重置为默认设置)但新创建的配置文件与我的旧配置文件一样相同,与FF配合不同在安全模式。我不明白吗?
答案 0 :(得分:1)
安全模式除了关闭所有附加组件外,还会关闭JIT和硬件加速渲染。
如果您使用的是Windows(考虑到所描述的行为,我认为是这种情况),那么关闭硬件加速渲染也会关闭DirectWrite文本渲染并使用GDI。
但DirectWrite和GDI最终会为同一文本提供不同的字体指标:一方面,DirectWrite可以进行亚像素字形定位,而GDI则不能。因此,如果您打开安全模式,行高和文本布局的其他各个方面都可能会发生变化。
请注意,Chrome使用GDI开始。另一方面,IE 9和10使用DirectWrite,所以值得测试你的页面在这些方面的表现;我敢打赌它类似于Firefox而不是安全模式。