出于某种原因,在我们的Weblogic测试服务器上,IE9将无法正确呈现@ font-face字体。它们在我们的本地开发环境中正常加载,但是当我们部署到测试时,Font Awesome和TinyMCE4的图标字体不会加载。
我已经将问题缩小到IE9似乎正在加载woff& ttf字体在eot字体之后(参见下面的SS),但无法弄清楚为什么它在我们的开发环境中正常工作,而不是在测试服务器上:
正如你所看到的,它正在正确加载eot,但由于某种原因它会继续,并仍然加载woff& TTF。这在我们的开发环境中不会发生(仅加载EOT)。我在web.xml中设置了mime类型,如下所示:
<mime-mapping>
<extension>eot</extension>
<mime-type>application/vnd.ms-fontobject</mime-type>
</mime-mapping>
<mime-mapping>
<extension>ttf</extension>
<mime-type>application/x-font-ttf</mime-type>
</mime-mapping>
<mime-mapping>
<extension>woff</extension>
<mime-type>application/x-font-woff</mime-type>
</mime-mapping>
<mime-mapping>
<extension>otf</extension>
<mime-type>font/opentype</mime-type>
</mime-mapping>
并且@ font-face声明看起来是正确的:
@font-face {
font-family: 'FontAwesome';
src: url('../font/fontawesome-webfont.eot?v=3.0.1');
src: url('../font/fontawesome-webfont.eot?#iefix&v=3.0.1')format('embedded-opentype'), url('../font/fontawesome-webfont.woff?v=3.0.1')format('woff'), url('../font/fontawesome-webfont.ttf?v=3.0.1')format('truetype');
font-weight: normal;
font-style: normal
}
我已经搜索了其他IE9 @ font-face问题的高低(有很多其他IE9字体问题),但是没有一个解决方案似乎在我们的最终工作。我猜它与我们服务器上的文件服务有关。
非常感谢任何帮助!
谢谢!