2012-06-20 55 views
2

我有一种字体在IE8和IE9以及所有其他浏览器中都能正常工作,但第二种字体只适用于IE9和其他浏览器。在IE8中,我收到错误:CSS字体不适用于IE8,但适用于IE9

“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的程序修改,以添加一些法文字符,但正如在所有其他浏览器中提到的那样。

任何帮助,将不胜感激。谢谢。

编辑:

有一件事,我意识到的是,EOT文件没有被IE9阅读,它给了同样的错误,只是用WOFF文件。您可以在http://www.searchfreefonts.com/free/cake.htm下载原始字体。任何人都可以在IE8中工作?

编辑2:

寻找在开发工具中,EOT字体显示被下载并且是正确的类型。我收到了一个304响应代码。

+0

你提到尝试不同的发电机,但你记得每次清除缓存? – SpliFF

+0

我用IE开发人员工具清除缓存,但我已经与过去完全不工作的问题,所以你可以将要发生什么。 – fanfavorite

+0

有一点要注意的,由于EOT格式,这是我的理解,实际上只有一个工具(从MS纬)的专有crappiness,使他们。我怀疑几乎所有在线服务实际上都使用相同的后端工具。 Type Light编辑可能与它不兼容。 – SpliFF

回答

2

找不到解决方案。在不同的计算机上多次重新下载并重新生成字体,每次查看时清除缓存并仍然无法使用。其他字体工作正常,所以我的结论是eot generator不喜欢字体。

+0

你尝试通过http://www.fontsquirrel.com/tools/webfont-generator产生的EOT文件? –

+0

是的,我试过没有运气的Eot文件。 – fanfavorite

0

尝试使用font-face发生器。

+0

更新了答案 –

+0

这是我已经习惯了的一个。不过谢谢。 – fanfavorite

+0

你使用.htaccess文件改变了吗? –

相关问题