【问题标题】:Using data uri scheme in IE 8 for fonts在 IE 8 中为字体使用数据 uri 方案
【发布时间】:2014-02-01 23:16:37
【问题描述】:

如何让 data uris 中定义的字体出现在 Internet Explorer 8 中?

这是背景:我在一个 Web 应用程序中使用 tinyMCE HTML 编辑器,有几个组织正在使用它,其中一些组织使用已设置为不允许下载字体的 IE。 tinyMCE中的图标是作为字体实现的,所以不能下载字体的人是看不到图标的。我正在尝试通过使用 skin.min.css 中的数据 uri 方案来解决这个问题,所以它说的地方

src:url('fonts/icomoon.eot')

我已经改成说

src:url("data:application/vnd.ms-fontobject;base64,TCAAAK...DOJntO")

这在 IE 9 中有效,但在 IE 8 中无效。根据this wiki page,如果 IE8 中的数据 URI 小于 32KB 并且出现在 CSS 中预期的 URL 位置,则应允许它们在 IE8 中使用。字体本身是 9KB。

更新:

我后来发现数据 uris 不是足以解决 IE 被设置为即使在版本 9 中也不允许字体下载的问题。通过该设置,不使用网络字体即使它们嵌入在样式表中。从安全的角度来看,这确实是有道理的,因为恶意代码可以很容易地驻留在嵌入式 base64 二进制文件中,而不是单独的二进制文件中。否则,我的想法是由于一厢情愿、未能清除缓存以及我的开发人员机器中的 IE 安全设​​置也被锁定的事实的混合。因此,我将编辑样式表以改用图像。

【问题讨论】:

  • 你有什么问题?
  • 如何让数据 uri 中定义的字体出现在 Internet Explorer 8 中?

标签: css fonts internet-explorer-8 data-uri


【解决方案1】:

很遗憾,IE8 中的字体不支持数据 URI。这是我在写font-face render check 时遇到的问题。唯一的解决方案是从外部加载 EOT。

【讨论】:

    猜你喜欢
    • 2011-10-12
    • 2013-11-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-03
    • 1970-01-01
    • 2021-04-30
    • 1970-01-01
    相关资源
    最近更新 更多