我的应用包含一个UIWebView。当应用程序从纵向旋转到横向或向后旋转时,字体粗细似乎略有变化。粗体文本和常规文本在横向上都略微大胆,而且在纵向上略微变薄。
在Safari中似乎不是这种情况,仅在我的应用中。这是一个示例图像,作为iPad上的屏幕截图。我已经旋转并裁剪了一个示例部分。
alt text http://dl.swankdb.com/font-change-example.png
我配置了以下CSS,但它似乎可以防止剧烈的字体大小变化,而不是我观察到的微妙的重量变化:
html {
-webkit-text-size-adjust: none; /* Prevent font scaling in landscape */
}
任何人都能解释一下吗?模拟器没有这样做 - 但我的iPad,iPhone 3GS和iPhone 4都有它。我也收到客户的报告,说它发生在他们身上,所以我知道这不在我脑海里!
答案 0 :(得分:17)
我已经在Safari中看到了这个,我正在整理一个网络应用程序。经过一天左右的头部刮擦,并解构了iPad用户指南使用的CSS,我发现
-webkit-transform: translate3d(0,0,0);
诀窍。谷歌搜索它看起来像这样可以实现渲染的硬件加速,从而在纵向和横向方向上产生更加一致的结果。
答案 1 :(得分:3)
在花了大量时间试图解决这个问题后,我找到了一个解决方案:
使用此:
html {
-webkit-font-smoothing:none;
}
答案 2 :(得分:2)
这样做的原因是只有一种模式可以利用显示器中的子像素,因为它们按特定方向排列。另一种模式将显示带有灰度抗锯齿的字体,并且显示略有不同。