控制字体面何时下载字体



根据我的理解,font-face会直接下载字体,然后每当你使用该字体时,它就会应用它。我的"问题"是,大多数电脑都安装了Century Gothic,所以我不想浪费时间下载一个字体(实际上不是Century Gothic,它是一个看起来类似的替代品),如果他们已经有了。

我的问题是,是否有可能控制@font-face下载实际字体的时间?还是只在第一次使用时下载?我目前能想到的唯一选择是运行字体测试,看看是否安装了Century Gothic(使用JavaScript),然后如果没有,则向页面注入新样式。

您应该设置一个字体族列表,浏览器将使用第一个可用的字体族。
所以如果你设置了font-family: 'Century Gothic', 'Your Other Font',那么只有在Century Gothic不可用时才会使用其他字体。

本页表示@font-face规则没有实际使用,将不会被下载:

如果您使用@font-face但从未应用该字体族,则不会下载该字体。很聪明,浏览器

也许您可以使用local('Century Gothic') ?这将使用系统的字体,如果它存在的话。

从http://nicewebtype.com/notes/2009/10/30/how-to-use-css-font-face/

:

本地值告诉浏览器在a上检查你的字体在试图从远程加载访问者的计算机之前。

因此,如果访问者的计算机上有该字体,则该字体将不会被下载。

感谢jcsanyi清理字体系统的工作原理。考虑到这一点,我想出了一个备用方案。我输入:

@font-face {
    font-family: CenturyGothicFallback;
    src: url('/Resources/Avant Garde Book BT.ttf');
}

然后加上:

font-family:Century Gothic,'Century Gothic',CenturyGothicFallback,Arial,sans-serif;

我用的字体是:http://www.911fonts.com/font-download/download_AvantGardeBkBTBook_846.htm,看起来和Century Gothic几乎一模一样。

最新更新