1

我从 fontsquirrel.com 为我们客户的一个网站生成了一个 @font-face 工具包。我们的站点在登台 (http) 和实时 (https) 服务器上运行。该网站建立在.NET之上

我遇到的问题是字体无法在 IE8 上加载。它在 IE9、Chrome、Firefox 和 Safari 中运行良好。

我采取的步骤如下:

  • 使用客户端提供的 .TTF 字体文件生成的套件
  • 将字体文件复制到资产文件夹中
  • 使用生成的代码在 CSS 文件中引用的字体文件@font-face(如下)
@font-face {
    font-family: 'font-name';
    src: url('../../fonts/font-name-webfont.eot');
    src: url('../../fonts/font-name-webfont.eot?#iefix') format('embedded-opentype'),
         url('../../fonts/font-name-webfont.woff') format('woff'),
         url('../../fonts/font-name-webfont.ttf') format('truetype'),
         url('../../fonts/font-name-webfont.svg#font-name') format('svg');
    font-weight: normal;
    font-style: normal;
}

我一直在研究可能的修复方法,到目前为止,我尝试了以下失败:

  • 重新生成字体套件
  • 检查在 Web.config 中设置了所有必需的 mime 类型
  • 使用开发人员工具在 IE 中检查了字体系列规则
  • 检查声明没有在其他 CSS 文件中被覆盖
  • 将下载的字体套件测试添加到临时服务器并在 IE8 中测试

注意:
我上传到临时服务器的测试在 IE8 上运行良好。这表明它要么与服务器相关,要么我们的 CSS 有问题。不过,我 99% 确定我已经排除了 CSS 中的任何可疑之处。

任何帮助将不胜感激!

4

1 回答 1

2

首先,我会检查字体文件是否实际被提供。它可能与不正确的相对路径一样愚蠢 - 尽管在这种情况下我对此表示怀疑。为此,请使用CharlesFiddler 之类的工具。这些工具应该始终是检查文件是否按预期提供的第一个调用端口。

我还会检查扩展/mime 类型是否在站点的配置或 IIS 的配置中设置。

于 2013-01-24T11:06:33.117 回答