我有一套嵌入式字体可以在Firefox,Chrome,Safari中正常工作 - 但是,令人惊讶的是,惊喜不在IE(v11,但在10和那也没用)。IE11嵌入字体将无法正常工作 - 尝试所有常用方法
我可以得到一些加载在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的分析上窒息。但是,鉴于这两个声明与字体名称相同,我不明白为什么会这样。
任何人都有什么想法我可以尝试,因为我已经用尽了吸管来抓住?
这做到了 - 太感谢你了,我会在我心里! – jaucourt
万岁IE和它的怪癖。您会惊讶地发现IE7/IE8中没有此限制:D –
Windows API的字体名称长度始终为30个字符。例如,请参阅https://msdn.microsoft.com/en-us/library/2ek64h34.aspx。我觉得奇怪的是,更长的名字似乎在IE7和8中起作用!等等,如果这是IE7和8中的一个错误,并且它涉及缓冲区溢出,并且错误最终在IE9中得到修复。 –