更正图标字体的字体显示值

时间:2018-03-24 04:44:12

标签: css fonts icon-fonts

font-display是一个新的CSS属性,允许开发人员控制字体的呈现方式,具体取决于它们加载的速度是否足够快。关于它的文章有几篇:

他们都没有提到图标字体。该规范确实有一个示例提到block值的图标字体,但对我来说使用它没有意义:

  

'块'

     

为字体提供短block period(大多数情况下建议使用3s)和无限swap period

如果我正确理解了规格,这意味着如果在“短块期间”之后没有加载图标,则会使用后备字体,导致其位置出现随机字母。

如果我使用optional值,则随机字母将永远不会出现,但如果图标未在“非常小的块周期”中加载,则图标也不会出现。

似乎没有给出无交换的无限块周期的值(因此除非字体加载,否则它将显示不可见的文本)。这有什么原因并且有解决方法吗?

1 个答案:

答案 0 :(得分:1)

  

font-display: block;

正如您所评论的,block仍然有一个swap期间;因此它仍然会渲染直到加载。

Quoting Chris Coyier

  

想听到很不幸的事吗?我们已经提到了font-display: block;。您是否会认为,嗯,直到自定义字体加载后才阻止了文本的呈现?没有。它仍然有一个交换期。对于图标字体之类的东西来说,这是一件完美的事情,除非加载自定义字体,否则图标(可能)没有任何意义。 las,没有针对此的字体显示解决方案


考虑替代方案:

我也去过那里。如果有机会,可能需要切换到 SVG 以获得图标。与字体图标相比,它具有一些优势:SVG is better at pretty much everything than icon fonts

网络字体专家甚至Zach Leatherman都对他非常著名的Comprehensive Guide to Font Loading Strategies对此有意见。

  

本指南不适用于具有不同加载优先级和使用案例的字体图标。另外,SVG可能是一个更好的长期选择。