【问题标题】:Internet Explorer 11 and supported web fontsInternet Explorer 11 和支持的网络字体
【发布时间】:2014-07-20 05:31:21
【问题描述】:

我正在使用 TTF 和 OTF 网络字体来捕捉大多数设备上的所有主要浏览器(FireFox、Chrome 和 IE11)。一切看起来都很好,在重新定位到生产服务器之前,IE 不想显示我的图标。

我猜,Redmond 的大脑有某种功能可以阻止它在 Internet 上运行,所以它只能在 localhost 上运行。

这里有什么问题? IE需要什么字体类型?

【问题讨论】:

  • Internet explorer 中请使用EOT 字体...
  • 老兄,如果您认为这是正确的,请发布正确的答案。我不明白为什么这么多人以 cmets 的身份发布答案。
  • 顺便说一句,过去我遇到过 TTF 文件的权限问题,必须在 TTF 文件本身中翻转某些位才能使其在生产中可用。根据您对问题的描述,我相信这就是您遇到的情况。在此处查看讨论:stackoverflow.com/questions/15744026/…

标签: css internet-explorer web fonts font-face


【解决方案1】:

这是使用 @font-face、hacky 修复和所有内容加载的标准方式 -

@font-face {
    font-family: 'MyWebFont';
    src: url('webfont.eot'); /* IE9 Compat Modes */
    src: url('webfont.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
         url('webfont.woff') format('woff'), /* Modern Browsers */
         url('webfont.ttf')  format('truetype'), /* Safari, Android, iOS */
         url('webfont.svg#svgFontName') format('svg'); /* Legacy iOS */
    }

嘿,请检查兼容性表以获取对 EOT 的支持,检查这些链接 -

Link 1

Link 2

【讨论】:

  • 不错!还没有使用它,正在摆弄 WOFF 并重新发布,设法让它在除了 Windows Phone 8 IE 之外的所有版本中运行。 webfont.eot?#iefix 是做什么的,顺便说一句?
  • 这是因为IE8 及以下解释字体声明的方式。正常的url('webfont.eot')在这些版本的IE中会导致404服务器错误,添加?#iefix修复了服务器问题。
  • 如果您只想支持 ie11 和 evergreen,我们还需要这个吗?
  • 谢谢您,先生,您的高级回答!
  • .woff2 是干什么用的?我的意思是哪个环境?
【解决方案2】:

注意一件事:
如果 css 中的 font-family 条目的名称与字体名称不同,则字体在 IE 中将不起作用! 这个错误花了我一整天的时间才弄清楚,如果你不知道的话会很沮丧!

对于 IE 6-11,使用 EOT 字体,但请注意任何其他浏览器都不支持它。

对于 IE >=9 和所有其他浏览器,请使用 woff 字体,因为它具有最广泛的支持和最佳的压缩率,因为它是专为网络设计的。

这样:

@font-face {
    font-family: 'FontName';
    src: url('FontName.eot');  /* IE 9 - 11 */
    src: url('FontName.eot?#iefix') format('embedded-opentype'), /* IE Fix for IE 6-8*/
         url('FontName.woff') format('woff'); /* IE 9-11 & All Modern Browsers */
}

【讨论】:

    猜你喜欢
    • 2013-07-03
    • 1970-01-01
    • 1970-01-01
    • 2017-02-15
    • 1970-01-01
    • 1970-01-01
    • 2012-12-21
    • 2018-12-13
    • 2016-07-01
    相关资源
    最近更新 更多