我试图理解为什么 Font Awesome带有各种字体格式,想知道如果只保留一两个是否对使用没有危害。
我想确定缩小规模时不需要的东西。 我还没有找到解释这一点的文档。
@font-face {
font-family: 'FontAwesome';
src: url('../font/fontawesome-webfont.eot?v=3.2.1');
src: url('../font/fontawesome-webfont.eot?#iefix&v=3.2.1') format('embedded-opentype'), url('../font/fontawesome-webfont.woff?v=3.2.1') format('woff'), url('../font/fontawesome-webfont.ttf?v=3.2.1') format('truetype'), url('../font/fontawesome-webfont.svg#fontawesomeregular?v=3.2.1') format('svg');
font-weight: normal;
font-style: normal;
}
请您参考如下方法:
您拥有这些不同文件格式的原因是跨浏览器兼容性。字体文件类型有很多种,但我将介绍最常见的几种。
结束时间
我相信,自 IE4 以来,Internet Explorer 率先 支持网络字体;然而,旧版本只接受 .eot
文件:因此,如果您想支持 IE<9,则必须包含它。但是 .eot
是一种专有文件类型,仅受 Internet Explorer 支持,而且非常紧凑,并且具有一种数字版权保护,可以避免未经许可使用(该文件可以有一个URL 绑定(bind),将其绑定(bind)到特定域)。
SVG
当 Safari 实现 webfonts(第 3 版)时,他们决定使用 .svg
,Opera 紧随其后。作为 Webkit 的 Chrome 也支持 .svg
。如您所知,SVG 基本上是 XML 格式的图形:这使它们很方便,因为浏览器想要开始支持矢量图形,但这不是最佳解决方案,因为这种格式的字体可能非常大。
TTF 和 OTF
所有现代浏览器都支持更常见的.ttf
和.otf
。这些格式一直存在:TrueType 在 1980 年代用轮廓格式取代了位图字体,而 OpenType 基本上建立在该标准的基础上,增加了排版功能(例如连字、变体等)。这些功能对于严肃的网页排版非常重要,但仍在支持过程中:
参见:
- http://caniuse.com/font-feature
- http://helpme.webink.com/customer/portal/articles/310119-what-browsers-support-opentype-features
- https://www.typotheque.com/articles/opentype_features_in_web_browsers (2012)
WOFF
最后,.woff
基本上是 .ttf
/.otf
添加了压缩(压缩率比那些高 40%)并且元数据(例如,许可证)。这是specifically developed for the web by W3C用于网络性能(带宽限制)并具有 suprisingly good support .
总而言之,我认为不将它们放在 CSS 中不会为您节省几个字节,当遇到 @font-face
属性时,浏览器可能会智能地处理它们下载的字体。