是否要求使用每个谷歌字体名称的通用字体系列名称

时间:2016-09-24 09:47:25

标签: css fonts

正如我们所知,在您的网站中注册任何谷歌字​​体网址然后可以在font-family css属性中使用它,在每个谷歌字体名称之后,我们会看到像sans-serif, serif, cursive and monospace这样的通用字体系列名称,就像这些exapmles以下

font-family: 'Tulpen One', cursive;
font-family: 'Ubuntu', sans-serif;
font-family: 'Trykker', serif;
font-family: 'Ubuntu Mono', monospace;

google字体是否与font-family属性一起使用而不使用Generic字体系列名称?并且只使用谷歌字体名称?像下面这个例子

font-family: 'Tulpen One';
font-family: 'Ubuntu';
font-family: 'Trykker';
font-family: 'Ubuntu Mono';

1 个答案:

答案 0 :(得分:1)

这个问题突出了对CSS的误解 - 你从谷歌获得的font-face规则告诉CSS引擎哪个字节码用作特定字体系列的字体资源(以及样式/重量)。这就是它所做的一切,而且可以做到。无论您使用的是Typekit或Google或github.io的外部字体,还是您自己的本地托管字体。

与此相反,您的页面 CSS负责说明浏览器应该为特定内容使用哪些字体系列:如果您列出一个或多个字体系列,那么浏览器将尝试每个字体系列那些直到它找到一个支持它需要样式的文本,并检查每个字母。如果一个字体系列不支持单个字母,它将检查下一个字体。如果它用完了要检查的字体(例如,你只列出一个字体系列值),那么浏览器只会猜测,然后选择你不想要的任何东西。它要做。

所以你(并且只有你)确保您的页面CSS具有正确的字体堆栈。特别是当你依赖外部字体资源时,有些时候那些不可用而且你对该字体的font-family指令会失败是完全现实的:那么呢?所以至少总是添加通用字体系列,但也要在其间添加一个或多个“websafe”字体。它看起来很完美吗?不,当然不是,但它看起来比浏览器的完整猜测更好。

保留您的通用类别关键字,并添加更多:

font-family: Ubuntu, Tahoma, Geneva, sans-serif;

使用完整的字体堆栈,因为您无法控制互联网。计划什么时候不能做你想做的事。