【发布时间】:2015-04-19 10:28:09
【问题描述】:
我遇到了字体在 iOS 和 MAC OSX 上根本无法正确渲染的问题。它在我尝试过的其他任何地方都能正确呈现,包括全新的虚拟 Windows 7 机器。
真的开始磨我的齿轮了。
这是我定义字体的 CSS。
@font-face {
font-family: 'Knockout';
src: local('☺'),
url('Fonts/knockout.otf') format('otf'),
url('Fonts/knockout.woff') format('woff'),
url('Fonts/knockout.ttf') format('truetype'),
url('/Fonts/knockout.svg#Knockout') format('svg');
font-weight: normal;
font-style: normal;
}
对于旧版 SVG 文件,这是标题:
<defs>
<font id="Knockout" horiz-adv-x="269" >
<font-face
font-family="Knockout"
font-weight="500"
font-stretch="normal"
units-per-em="1000"
这是需要应用字体的实际类的 LESS/CSS 样式:
.header
{
position: absolute;
top: 0;
font-family: 'Knockout';
color: @ColorTealD;
font-size: 10vw;
pointer-events: none;
text-rendering: optimizeLegibility;
}
就我访问过的 StackOverflow 链接而言:
@font-face not working in mobile Webkit
我还访问了一个建议使用笑脸技巧的链接,以及另一个建议在 SVG URL 前加上“/”的链接。我还擦除了 iPhone 上的 Safari 缓存。 我需要强调的是,这种字体出现在其他浏览器中,包括完全擦除的虚拟机。此时切换字体不是一种选择,因为已经为许可支付了 500 美元。
谁知道我还能做些什么来解决这个问题?我很确定接下来的步骤包括将处女扔进火山或给山羊放血。
【问题讨论】:
-
究竟是什么渲染不正确?我知道这是一些使用数字的浏览器和字体权重的问题。 stackoverflow.com/questions/3367589/…
-
没有文字。什么都没有呈现到屏幕上,只是内容应该存在的空白点。
-
尝试清除缓存。
-
已经试过了,没用