【发布时间】:2014-01-28 13:35:07
【问题描述】:
iOS 的 Safari 无法正确渲染自定义字体。这里出了什么问题?
注意字体的渲染有多么不同:在 chrome 中,笔触宽度更粗。在 Safari 中,字符间距更宽。我觉得chrome的渲染更正确。
更新:到目前为止,我合并了答案中的建议,但没有解决问题。我已经更新了 jsfiddle 和截图。现在我不使用粗体或任何默认粗体标签,只使用正常粗细的单一字体。我采纳了@Vizllx 的建议,尽管它似乎没有帮助。
jsfiddle 上的问题示例:
@font-face{
font-family:Lola;
src:url(http://www.pmap.co/c/52c0d565/fonts/lola/lola.woff) format('woff');
font-style:normal;
}
.test {
font-size: 200%;
font-family: Lola;
-webkit-text-size-adjust:100%
}
它在 Chrome 中的外观:
这是它在iOS Safari 上的样子(“Mozilla/5.0(iPhone;CPU iPhone OS 6_0_1 像 Mac OS X)AppleWebKit/536.26(KHTML,像 Gecko)版本/6.0 Mobile/10A523 Safari/8536.25” )
在实际问题中,我使用常规 fontsquirrel 字体声明:
@font-face {
font-family: 'Lola';
src: url('../fonts/lola/lola.eot');
src: url('../fonts/lola/lola.eot?#iefix') format('embedded-opentype'),
url('../fonts/lola/lola.woff') format('woff'),
url('../fonts/lola/lola.ttf') format('truetype');
font-weight: normal;
font-style: normal;
}
【问题讨论】:
-
对于 windows 上的 safari,我们看到了同样的问题,但是 "-webkit-font-smoothing: antialiased;"修复它:jsfiddle.net/c9eP5/2 仍在寻找 safari-ios 修复。
标签: ios iphone safari font-face webfonts