到目前为止,我一直使用Paul Irish的[防弹字体外观语法
但是我只是在看caniuse对.woff和.woff2文件的支持,它说IE9+支持woff。关于该主题的大多数文章都来自2009年左右,而在撰写本文时已经整整7年了。当woff现在得到如此广泛的支持时,我们真的需要继续声明ttf,otf,eot和svg吗?
2018年10月
tl; dr:使用WOFF2,每个现代的浏览器都支持WOFF2,并且WOFF会回退,因为IE11不会死掉。结束。
2016年原始答案
简短的回答:不。
EOT是唯一相关的IE8及以下(虽然琐事:一路下跌到IE4 IE实际上开创了网络字体)和SVG字体作为技术( 不
混淆与OpenType字体与SVG轮廓)被放弃2015年初)因为一旦真正的网络字体开始可用,局限性就会发疯。从2016年开始,您只需要WOFF即可。还有WOFF2,如果您想利用WOFF的更新更好的版本,它只是成为w3的推荐(在回答此问题时)。
为了使事情变得更容易,自2016年1月12日起,Microsoft不再支持IE8及以下版本,而对IE9的支持有限:它们现在仅支持每个仍受支持的操作系统的最新可用浏览器,这意味着Windows XP不再支持IE9。因为XP本身已不再受支持,但在 技术上 仍受支持(令人吃惊的是),直到Vista SP2和Server 2008R2分别在2017年和2020年终止扩展支持为止。当然,对于WindowsServer2008而言,Webfont支持是无关紧要的,并且大多数仍使用旧版本Windows的企业都跳过了Vista,因为它们是在Windows
XP(自担风险)或Windows 7(我们几乎可以期望它们全部成为Windows10将于2016年7月发布,其29日为最后日期人们可以免费从7 / 8.1(而不是8)升级到10)。
(2017年4月编辑:Windows Vista SP2本月不再受支持,因此现在不再正式支持IE9)
至于TTF / OTF,您不希望在线使用这些内容,也不想使用TIFF图像而不是JPG或PNG:即使WOFF只是TTF / OTF数据的薄包装,WOFF /WOFF2允许压缩数据,而普通的OpenType不允许。
此外,TTF /
OTF是通用的(对于支持OpenType的系统)字体,因此为了确保正确性(尤其是通过IE版本),要对其进行详细审查。使用WOFF作为文件类型,可以清楚地表明这是
W eb( O pen) F ont( Format),一种不太严格的审查形式意味着某些无法通过系统OpenType验证通过的字体仍可以正常工作,例如webfonts(由于并非所有必需的OpenType数据都是字体在Web上下文中起作用所必需的)。
最后,您可以选择WOFF格式:格式1,简称WOFF,是较旧的格式,使用基于的压缩deflate
,类似于PNG压缩;格式2(称为WOFF2)是基于brotli
算法的压缩格式,是一种较新的格式,在处理支持多种语言的unicode字体时,还可以将字体“切成”单独的文件,以优化传递。您不需要同时使用所有文件,因此仅提供覆盖特定页面所需的unicode范围的文件,并且可以将页面大小和加载时间减少很多。
结论:为前进而欢呼,只需使用WOFF(或WOFF2)即可。
并且,当然,请记住@font-face
使用该format()
值指示源的格式。
问题内容: 在 CSS3 ,有包括如多发性字体类型,,,和。 我们为什么要使用所有这些类型? 如果它们专用于不同的浏览器,为什么它们的数量大于主要Web浏览器的数量? 问题答案: 在2019年回答: 仅使用WOFF2,或者如果需要传统支持,请使用WOFF。不要使用任何其他格式 (和是死的格式,并有完整的系统字体,并且不应该被用于Web的目的) 2012年的原始答案: 简而言之,font-face很
有许多资源可以解释为什么需要内联显示图。例如%matplotlib内联的目的。然而,我觉得如果我们在你的木星笔记本中使用更高版本的IPython,那就没有必要了。这是因为我可以显示内联或不运行(每次我重启我的内核,我使用的IPython版本是7.17.0)。我的预感是,对于最近的版本,内联后端可能是默认激活的。 当我运行检查新会话上的当前后端时,它会显示Qt5Agg。运行后,当我通过运行再次检查时
本文向大家介绍小程序getLocation需要在app.json中声明permission字段,包括了小程序getLocation需要在app.json中声明permission字段的使用技巧和注意事项,需要的朋友参考一下 小程序getLocation需要在app.json中声明permission字段,个别需要获取用户地理位置的在开发者工具调试时会出现getLocation需要在app.json
Launch4j的设置似乎很简单,但是在生成exe之后,它就不能从其他位置运行了。 谢了,尚卡尔。
本文向大家介绍微信小程序getLocation 需要在app.json中声明permission字段,包括了微信小程序getLocation 需要在app.json中声明permission字段的使用技巧和注意事项,需要的朋友参考一下 小程序更新了部分配置,位置授权要先在app.json里声明一下,这在以前是不需要,会提示getLocation 需要在app.json中声明permission字段
问题内容: 如何在grails war中打包解放字体?字体可能在我要部署到的服务器上不可用,我的报表系统需要这些字体。 如何在战争中包括字体,使它们位于类路径上并可供JVM使用? 问题答案: 如果您将它们显式地用于jasper报告,则可以执行此操作。 grails-app / conf / jasperreports_extension.properties grails-app / conf /