【问题标题】:Font Awesome not appearing in Internet Explorer 8字体真棒没有出现在 Internet Explorer 8 中
【发布时间】:2012-10-01 20:19:23
【问题描述】:

我们最近开发了一个网站,在其设计中高度依赖 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 的其他方法有任何想法?

【问题讨论】:

    标签: internet-explorer-8 font-awesome


    【解决方案1】:

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

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

    <!--[if lt IE 9]>
    <script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
    <![endif]-->
    </body>
    

    【讨论】:

    • 这在 IE7 中为我修复了它,但在 8 中没有。
    • 可能与字体加载前的内容渲染有关。我还在 FontAwesome 之后添加了html5-shiv 来解决这个问题。见stackoverflow.com/questions/9809351/…
    【解决方案2】:

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

    换了个头...

    对我有用的是:

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

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

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

    另外,我读到 (Force IE compatibility mode off using tags),您应该将该元标记放在所有其他元标记之上,并且放在任何条件 IE 语句之前;否则元标记将失效。

    【讨论】:

      【解决方案3】:

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

      【讨论】:

        【解决方案4】:

        我尝试了一切,从修改我的 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">
        

        希望对您有所帮助...

        【讨论】:

          【解决方案5】:
          1. 将此添加到 htaccess。 "BrowserMatch MSIE best-standards-support Header set X-UA-Compatible IE=8 env=best-standards-support"
          2. 正在尝试重新转换 eot 字体
          3. doc 压缩模式更改
          4. 试过休眠功能
          5. setInterval js
          6. 添加 google html5 脚本
          7. 为ie8在body部分调用css
          8. 添加数据图标类
          9. 广告伪元素js
          10. 在 CSS 中添加 png 和 svg 过滤器
          11. 检查服务器中的字体类型权限

          但添加后终于可以使用

          .sass 和 .less css

          文件

          快乐编码

          【讨论】:

            【解决方案6】:

            如果您使用的是 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

            【讨论】:

              猜你喜欢
              • 2018-05-18
              • 2016-08-17
              • 1970-01-01
              • 2021-06-04
              • 2019-04-19
              • 1970-01-01
              • 1970-01-01
              • 2021-10-16
              • 1970-01-01
              相关资源
              最近更新 更多