15

我们最近开发了一个网站,该网站强烈依赖 Font Awesome 作为其设计的一部分。我们将标准实现与 before:content 及其提供的 CSS 一起使用。

由于某种原因,Font Awesome 没有在 IE8 中显示。我花了好几个小时进行故障排除和尝试各种修复,但没有运气。

我有:

  • 将 EOT 的 mimetype 设置为 application/vnd.ms-fontobject
  • 设置 OTF、TTF 的 mimetype 为 application/octet-stream
  • 加载所有 CSS 后执行 HTML5Shiv。
  • 在页面加载时重新加载 CSS 或 DOM 的各种尝试

这是网站:http ://www.tetakere.org.nz - Hotlinks 框是 Font Awesome 的一个很好的例子

有没有人对让这个网站显示 Font Awesome 的其他方法有任何想法?

4

6 回答 6

18

经过一些痛苦的故障排除后,我终于解决了。

解决方案是将 HTML5Shiv 的加载从该<head>部分移动到</body>标记之前。

<!--[if lt IE 9]>
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
</body>
于 2012-10-04T22:40:58.953 回答
9

我知道这是一个较老的问题,但是我在这个问题上遇到了很多麻烦,除了最后一个答案之外,这些答案都没有帮助。

换了个头...

对我有用的是:

<meta http-equiv="X-UA-Compatible" content="IE=edge">

这也有效(我提到的最后一个答案):

<meta http-equiv="X-UA-Compatible" content="IE=8">

另外,我读到(使用标签强制关闭 IE 兼容模式)您应该将该元标签放在所有其他元标签之上,并且放在任何条件 IE 语句之前;否则元标记将失效。

于 2014-03-13T05:36:05.617 回答
2

我不需要 html5shiv 来让 FontAwesome 在 IE8 中工作。 这个答案(重新创建 .eot 文件并替换旧文件)解决了我的问题。

于 2013-07-31T08:48:10.797 回答
2

我尝试了从修改我的 apache 配置到 .htaccess 文件的所有方法,但都没有成功。在 IE 开发工具中,我偶然发现了“文档模式”,默认为 IE7。因此,经过一些研究,我发现了这个元标记:

<meta http-equiv="X-UA-Compatible" content="IE=9">

现在 IE 10 和 9 可以正确格式化我的网站并正确显示所有 Font Awesome 图标。

如果你仍然想要 IE 8 兼容,那么你可以从这个开始:

<meta http-equiv="X-UA-Compatible" content="IE=8">

希望有帮助...

于 2013-09-19T21:11:44.313 回答
0
  1. 将此添加到 htaccess。“BrowserMatch MSIE 最佳标准支持标头集 X-UA 兼容 IE=8 env=最佳标准支持”
  2. 试图重新转换eot字体
  3. doc 可压缩性模式更改
  4. 试过usleep功能
  5. 设置间隔js
  6. 添加谷歌html5脚本
  7. 在 ie8 的正文部分调用 css
  8. 添加数据图标类
  9. 广告伪元素js
  10. 在 CSS 中添加 png 和 svg 过滤器
  11. 检查服务器中的字体类型权限

但最终在添加时有效

.sass 和 .less CSS

文件

快乐编码

于 2013-10-25T12:47:30.567 回答
0

如果您使用的是 IE8,则需要添加 html5.js 脚本,例如:

<!--[if lt IE 9]>
  <script     src="https://oss.maxcdn.com/html5shiv/3.7.3/html5shiv.min.js"></script>
<![endif]-->

它对我有用,我相信它会起作用。参考链接 https://github.com/FortAwesome/Font-Awesome/wiki/Troubleshooting#internet-explorer-compatibility-mode

于 2017-02-04T12:12:06.023 回答