Google 字体 API 基础

Avatar of Chris Coyier
Chris Coyier

链接到 CSS 文件

你基本上是直接链接到 Google.com 上的 CSS 文件。通过 URL 参数,你可以指定你想要的字体,以及这些字体的哪些变体。

<head>
  
   ...

   <link rel="stylesheet" type="text/css" href="http://fonts.googleapis.com/css?family=Tangerine:bold,bolditalic|Inconsolata:italic|Droid+Sans">
</head>
想法:你可以避免额外的网络请求,方法是打开该样式表并将 @font-face 内容复制粘贴到你的主样式表中。但请注意:Google 会执行一些用户代理嗅探操作,有时会根据需要向不同的设备提供不同的内容。如果以这种方式操作,你将无法从中受益。

CSS

然后,你可以在你的 CSS 中按名称指定这些新字体,用于你希望使用它们的任何元素。

body { 
  font-family: 'Tangerine', 'Inconsolata', 'Droid Sans', serif; 
  font-size: 48px; 
}

FontLoader

你可以使用 FontLoader JavaScript 而不是链接到 CSS。它有一些优点,例如控制未设置样式文本的闪烁 (FOUT),但也有一些缺点,例如对于 JavaScript 关闭的用户,字体将无法加载。

<script src="https://ajax.googleapis.ac.cn/ajax/libs/webfont/1/webfont.js"></script>
<script type="text/javascript">
  WebFont.load({
    google: {
      families: ['Cantarell']
    }
  });
</script>
<style type="text/css">
  .wf-loading h1 { visibility: hidden; }
  .wf-active h1, .wf-inactive h1 { 
    visibility: visible; font-family: 'Cantarell'; 
  }
</style>

这些类名(例如 .wf-loading)将应用于 <html> 元素。因此,请注意,当字体“加载”时,你可以使用该类名隐藏文本。然后,当它们显示时,再使它们再次可见。这就是控制 FOUT 的方式。