为什么这些font-face中的一个在IE8中渲染,但其他的不是?

时间:2012-09-16 18:28:20

标签: css internet-explorer fonts font-face

为什么这个字体在IE8中呈现:

@font-face {
  font-family: 'Aller';
  src: url('aller_rg-webfont.eot');
  src: url('aller_rg-webfont.eot?#iefix') format('embedded-opentype'),
       url('aller_rg-webfont.woff') format('woff'),
       url('aller_rg-webfont.ttf') format('truetype'),
       url('aller_rg-webfont.svg#AllerRegular') format('svg');
  font-weight: normal;
  font-style: normal;
}

这不是:

@font-face {
  font-family: 'Champagne';
  src: url('champreg-webfont.eot');
  src: url('champreg-webfont.eot?#iefix') format('embedded-opentype'),
       url('champreg-webfont.woff') format('woff'),
       url('champreg-webfont.ttf') format('truetype'),
       url('champreg-webfont.svg#Champagne&LimousinesRegular') format('svg');
  font-weight: normal;
  font-style: normal;
}

我真的无法理解。显然,所有其他浏览器都可以正常工作。

3 个答案:

答案 0 :(得分:32)

尝试使用在线woff / ttf / svg创建一个新的.eot文件,以便转换器。

如果这个新文件不起作用,那么它可能是字体本身的问题。如果字体名称和系列名称在实际字体文件中不相同,有时IE6-8会合适。解决它:

  • 您需要下载FontForge
  • 打开字体
  • 从菜单中选择Element> Font Info
  • 确保人类的字体名称,姓氏和姓名完全相同
  • 将字体保存为TTF或OTF,并使用在线转换器吐出EOT文件。

我使用font-face的每个问题 - 如果CSS是正确的 - 使用上述两个解决方案中的一个,那么好运:-)甚至可以尝试保存字体而不需要在FontForge中进行任何更改并在线转换在你摆弄名称属性之前。

答案 1 :(得分:0)

  1. 将此添加到htaccess。 “BrowserMatch MSIE最佳标准支持标题集X-UA兼容IE = 8 env =最佳标准支持”
  2. 尝试重新转换eot字体
  3. doc compactibility mode chnage
  4. 试过usleep功能
  5. setInterval js
  6. 添加google html5脚本
  7. 在ie8
  8. 的身体部位调用css
  9. 添加数据图标类
  10. ad pseudo elements js
  11. 添加png& svg在css中过滤
  12. 检查服务器中的字体类型权限
  13. 但最终在添加时起作用

      

    .sass和.less css

    文件 快乐的编码...... 通过 西瓦库玛

答案 2 :(得分:0)

在IIS(MVC环境)下,我必须将以下规则添加到我的Web.config:

   <system.web>
    <httpHandlers>
      <add verb="GET" path="*.eot" type="System.Web.StaticFileHandler" />
      <add verb="GET" path="*.svg" type="System.Web.StaticFileHandler" />
      <add verb="GET" path="*.ttf" type="System.Web.StaticFileHandler" />
      <add verb="GET" path="*.woff" type="System.Web.StaticFileHandler" />
      <add verb="GET" path="*.otf" type="System.Web.StaticFileHandler" />
    </httpHandlers>
  </system.web>