我有一套嵌入式字体,可以在Firefox,Chrome,Safari中正常使用 - 但是,惊喜,惊喜,不是在IE中(第11版,但在10中试过,但也没有工作)。
我可以在IE中加载一些,但不能加载其他版本。 css示例:
/* working */
@font-face {
font-family: 'FoundersGroteskWeb-Semibold';
src: url(./fonts/FoundersGroteskWeb-Semibold.eot);
src: url(./fonts/FoundersGroteskWeb-Semibold.eot?#iefix) format('embedded-opentype'),
url(./fonts/FoundersGroteskWeb-Semibold.woff) format('woff');
font-style: normal;
font-weight: normal;
}
/* not working */
@font-face {
font-family: 'FoundersGroteskX-CondensedWeb-Bold';
src: url(./fonts/FoundersGroteskX-CondensedWeb-Bold.eot);
src: url(./fonts/FoundersGroteskX-CondensedWeb-Bold.eot?#iefix) format('embedded-opentype'),
url(./fonts/FoundersGroteskX-CondensedWeb-Bold.woff) format('woff');
font-style: normal;
font-weight: normal;
}
提供字体,所有字段都正确,等等。我注意到的一个区别是所有其他浏览器都在加载woff文件,而IE则使用(第一个,非#iefix)eot文件。所以我尝试删除对eot文件的所有引用,强制IE11使用woff。再次,它加载第一个很好,但没有使用第二个(所有其他浏览器加载都没有问题)。
当我检查IE上的网络选项卡时,我可以看到第一个字体的200响应,但第二个字体根本没有任何内容,看起来它可能在css的解析中窒息。但是,鉴于这两个声明与字体名称相同,我不明白为什么会这样。
任何人都有任何想法我还能尝试什么,因为我已经没有吸管了?
答案 0 :(得分:9)
IE 9(我认为10和11)在字体名称声明上有31个字符限制。请尝试将您的字体名称重命名为“FoundersGroteskX-CndWeb-Bld”;这是30个字符,只是为了安全(因为31个字符的限制包括引号和分号。
答案 1 :(得分:0)
根据您之前的建议,我也尝试尽量减少字体名称,但这仍然无法在最新的IE中使用:
</style>
<style type="text/css">
@font-face {
font-family:"Avenir";
src: url("./Fonts/Avenir.eot");
src: url("./Fonts/Avenir.eot?#iefix") format("embedded-opentype"),
url("./Fonts/Avenir.woff") format("woff");
}
</style>
你认为IE不再接受woff字体吗?
答案 2 :(得分:0)
检查字体下载安全性,应该启用加载字体图标。
导航至:
IE&gt;互联网选项&gt;内联网&gt;自定义级别&gt;下载&gt;字体下载