我在IE8和IE9以及所有其他浏览器中都有一种字体正常工作,但第二种字体仅适用于IE9和其他浏览器。在IE8中,我收到错误:
“CSS3111:@ font-face遇到未知错误。”
我一直在阅读并尝试了许多没有运气的事情。
我的代码是:
<!DOCTYPE html>
<html lang="en">
<head>
<title>Test Site</title>
<meta charset="utf-8" />
<style type="text/css">
@font-face {
font-family: "Cake";
src: url('cake.eot'); /* IE9 Compat Modes */
src: url('cake.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
url('cake.woff') format('woff'), /* Modern Browsers */
url('cake.ttf') format('truetype'), /* Safari, Android, iOS */
url('cake.svg#svgCake') format('svg'); /* Legacy iOS */
}
p {
font-family: "Cake";
}
</style>
</head>
<body>
<p>Testing font</p>
</body>
</html>
我尝试用几个不同的发生器多次重新生成eot,玩CSS,玩标题,玩域等等,但看起来它们都很好。如前所述,相同的代码,只是指向不同的字体文件工作正常。由于某种原因,这个文件不想工作。我查看了ttfpatch程序,但它告诉我字体的tableversion是3,这与其他工作字体相同。这些字体由名为Type Light 3.2的程序修改,以添加一些法语字符,但正如所提到的那样适用于所有其他浏览器。
任何帮助将不胜感激。感谢。
编辑:
我意识到的一件事是IE9没有读取EOT文件,它只是使用WOFF文件给出了同样的错误。您可以在http://www.searchfreefonts.com/free/cake.htm下载原始字体。任何人都可以在IE8中工作吗?
编辑2:
查看开发人员工具,eot字体似乎正在下载并且是正确的类型。我收到了304响应代码。
答案 0 :(得分:2)
无法找到解决方案。在不同的计算机上多次重载并重新生成字体,每次查看时清除缓存,但仍然无效。其他字体工作正常,所以我的结论是eot生成器不喜欢字体。
答案 1 :(得分:0)
尝试使用font-face生成器。
答案 2 :(得分:0)
尝试使用此解决方案http://fontface.codeandmore.com/blog/ie-7-8-error-with-eot-css3111/,因为它为我们的用户多次工作。