2012-08-07 56 views
1

@font-face{ font-family: gotham; src: url('../fonts/Gotham-Light.otf'); } 我在我的css文件中包含了名为Gotham的字体。它在Mozilla和所有其他浏览器中工作,但不在IE9中工作。css font-face在IE中不工作

+0

你的问题是不是很丰富....是你的问题相关http://stackoverflow.com/questions/5587956/make-adobe-fonts-work-with-css3-font-face-in-ie9? – fvu 2012-08-07 09:40:20

+0

@ font-face需要几种不同的字体格式(由不同的浏览器支持);您可以使用http://www.fontsquirrel.com/fontface/generator来生成不同的文件。 – darma 2012-08-07 09:41:46

+0

@ ramshinde1992:详情请参阅下面的答案。 – 2012-08-07 09:51:29

回答

2

The New Bbulletproof Fontface Syntax

@font-face { 

     font-family: 'MyFontFamily'; 
     src: url('myfont-webfont.eot?#iefix') format('embedded-opentype'), 
      url('myfont-webfont.woff') format('woff'), 
      url('myfont-webfont.ttf') format('truetype'), 
      url('myfont-webfont.svg#svgFontName') format('svg'); 
    } 

它是如何工作的?

Internet Explorer < 9在src属性的解析器中存在一个错误。如果您在src中包含多种字体格式,则IE无法加载它并报告404错误。原因是IE试图加载文件中的所有内容,直到最后一个右括号。为了处理这种错误的行为,你只需首先声明EOT并附加一个问号。问号让IE认为字符串的其余部分是查询字符串,并加载EOT文件。其他浏览器遵循规范并根据src级联和格式提示选择他们需要的格式。

浏览器兼容性:

的Safari 5.03,IE 6-9,火狐3.6-4,铬8的iOS 3.2-4.2,机器人2.2-2.3,歌剧11

要生成您的字体套件,您应该使用fontsquirrel