我使用Font-awesome-min.css在IE 11和chrome上运行良好。
但是我的客户要求是使用font-awesome,即使我们禁用了从IE互联网选项(Internet options -> Security -> Custome level -> Download -> Font download -> Disable)
下载的字体。
任何建议吗?
base64编码完全不起作用。它在Chrome上工作得很好,但在禁用字体下载的IE 11中,它不起作用。
这是有道理的,并不让我感到惊讶。从安全的角度来看,如果你不允许第三方字体在你的系统上呈现,那么为什么CSS中的嵌入式字体会被区别对待呢?它仍然是从一个不受信任的来源下载的第三方字体。
许多解决方案:- 不要使用FA
- 使用FA作为图像
- 说服域管理员启用字体下载
- 在本地安装字体(通过组策略),并使用
url: local(myFont.woff)
。 - 如果网站是内部的,将其添加到可信站点区域,并确保字体下载是启用的。
困难的方法是切换到基于png的https://github.com/encharm/Font-Awesome-SVG-PNG或者你可以将你想要使用的特定图标更改为png文件,并在。css文件
这是可以修复的。您只需要Base64字体并将其包含在CSS文件中。确保在包含对新的FontAwesomeB64.css的调用后删除对可下载WOFF文件的调用
使用https://www.base64encode.org/编码WOFF font - awesome字体文件
编辑结果文件并添加这些行。当您到达src:url行时,确保将其运行到您收到的base64信息中(不要使用我在这里显示的大于和小于符号)。在base64信息的末尾添加单引号、圆括号、分号和大括号,以完成:
@font-face {
font-weight: 400;
font-style: normal;
font-family: 'FontAwesome';
src:url(data:application/x-font-woff;base64,<insert base64 code here>);}
你现在有一个base64 CSS文件的font - awesome字体绕过所有的字体下载拒绝设置的浏览器。
我发现这适用于所有字体,有点重的下载,但值得的功能保证。