由于 EOT,Firefox 完全拒绝字体加载
Firefox completelly refuses font load due to EOT
我注意到 Firefox 拒绝在我的某个网页上加载自定义字体。我 90% 确定它在一个月前有效。现在我使用 Firefox 43.04 (Windows)。控制台中的错误是:
downloadable font: rejected by sanitizer (font-family: "PT Serif" style:normal weight:bold stretch:normal src index:0) source: https://localhost:8443/project/fonts/2/pt-serif-v8-latin_latin-ext-700.eot
并且 html 文本使用系统字体 (Times New Roman) 呈现。
相关的CSS是:
@font-face {
font-family: 'PT Serif';
font-style: normal;
font-weight: 700;
src: url('../fonts//pt-serif-v8-latin_latin-ext-700.eot'); /* IE9 Compat Modes */
src: local('PT Serif Bold'), local('PTSerif-Bold'),
url('../fonts//pt-serif-v8-latin_latin-ext-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
url('../fonts//pt-serif-v8-latin_latin-ext-700.woff') format('woff'), /* Modern Browsers */
url('../fonts//pt-serif-v8-latin_latin-ext-700.ttf') format('truetype'), /* Safari, Android, iOS */
}
如果我用 eot 删除两行,那么它可以正常工作(使用网络字体)。
问题是,为什么只有一种格式有问题,它会拒绝整个字体系列?
我需要 eot 用于 IE(奇怪,caniuse 声称 IE 从 v9 开始支持 WOFF,但它似乎不适用于我的 IE11)。
下载了字体文件
CSS 行("Safari, Android, iOS" 行)以逗号而不是分号结尾。 (脸红)
正确的(测试有效)版本是:
@font-face {
font-family: 'PT Serif';
font-style: normal;
font-weight: 700;
src: url('../fonts//pt-serif-v8-latin_latin-ext-700.eot'); /* IE9 Compat Modes */
src: local('PT Serif Bold'), local('PTSerif-Bold'),
url('../fonts//pt-serif-v8-latin_latin-ext-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
url('../fonts//pt-serif-v8-latin_latin-ext-700.woff') format('woff'), /* Modern Browsers */
url('../fonts//pt-serif-v8-latin_latin-ext-700.ttf') format('truetype'); /* Safari, Android, iOS */
}
我注意到 Firefox 拒绝在我的某个网页上加载自定义字体。我 90% 确定它在一个月前有效。现在我使用 Firefox 43.04 (Windows)。控制台中的错误是:
downloadable font: rejected by sanitizer (font-family: "PT Serif" style:normal weight:bold stretch:normal src index:0) source: https://localhost:8443/project/fonts/2/pt-serif-v8-latin_latin-ext-700.eot
并且 html 文本使用系统字体 (Times New Roman) 呈现。
相关的CSS是:
@font-face {
font-family: 'PT Serif';
font-style: normal;
font-weight: 700;
src: url('../fonts//pt-serif-v8-latin_latin-ext-700.eot'); /* IE9 Compat Modes */
src: local('PT Serif Bold'), local('PTSerif-Bold'),
url('../fonts//pt-serif-v8-latin_latin-ext-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
url('../fonts//pt-serif-v8-latin_latin-ext-700.woff') format('woff'), /* Modern Browsers */
url('../fonts//pt-serif-v8-latin_latin-ext-700.ttf') format('truetype'), /* Safari, Android, iOS */
}
如果我用 eot 删除两行,那么它可以正常工作(使用网络字体)。
问题是,为什么只有一种格式有问题,它会拒绝整个字体系列? 我需要 eot 用于 IE(奇怪,caniuse 声称 IE 从 v9 开始支持 WOFF,但它似乎不适用于我的 IE11)。
下载了字体文件CSS 行("Safari, Android, iOS" 行)以逗号而不是分号结尾。 (脸红)
正确的(测试有效)版本是:
@font-face {
font-family: 'PT Serif';
font-style: normal;
font-weight: 700;
src: url('../fonts//pt-serif-v8-latin_latin-ext-700.eot'); /* IE9 Compat Modes */
src: local('PT Serif Bold'), local('PTSerif-Bold'),
url('../fonts//pt-serif-v8-latin_latin-ext-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
url('../fonts//pt-serif-v8-latin_latin-ext-700.woff') format('woff'), /* Modern Browsers */
url('../fonts//pt-serif-v8-latin_latin-ext-700.ttf') format('truetype'); /* Safari, Android, iOS */
}