【问题标题】:Best way to load Google fonts <link/> , @import or javascript加载 Google 字体 <link/> 、 @import 或 javascript 的最佳方式
【发布时间】:2015-06-24 17:58:15
【问题描述】:

我想知道从 Google 字体加载字体的最佳方式是什么。我搜索并创建了&lt;link/&gt;@import 更好。是否有任何工具可以测量网络和浏览器的速度和性能? javascript方法呢?

<link href='http://fonts.googleapis.com/css?family=Oswald:300' rel='stylesheet' type='text/css'>

@import url(http://fonts.googleapis.com/css?family=Oswald:300);

<script type="text/javascript">
  WebFontConfig = {
    google: { families: [ 'Oswald:300:latin' ] }
  };
  (function() {
    var wf = document.createElement('script');
    wf.src = ('https:' == document.location.protocol ? 'https' : 'http') +
      '://ajax.googleapis.com/ajax/libs/webfont/1/webfont.js';
    wf.type = 'text/javascript';
    wf.async = 'true';
    var s = document.getElementsByTagName('script')[0];
    s.parentNode.insertBefore(wf, s);
  })(); </script> 

【问题讨论】:

标签: seo pagespeed google-font-api


【解决方案1】:

&lt;link&gt; 优于 @import,因为它不会阻止并行下载。有关详细信息,请参阅此链接:http://www.stevesouders.com/blog/2009/04/09/dont-use-import/

如果您要使用的字体是静态的并且由 Google 提供,那么 JavaScript 解决方案在性能方面可能比 &lt;link&gt;@import 更差,因为它必须加载外部脚本 (//ajax.googleapis.com/ajax/libs/webfont/1/webfont.js)然后,根据我所见,它会注入您可以直接放入 HTML 源代码的相同链接元素。

【讨论】:

  • 虽然这可能是家庭烘焙 js 解决方案的情况,但 Google 提供了一个加载器脚本,允许开发人员控制加载,即异步或异步,并添加许多相关事件。它还允许管理多个源 CDN。见 [链接] (github.com/typekit/webfontloader)
猜你喜欢
  • 2015-10-03
  • 2014-07-05
  • 2015-07-07
  • 1970-01-01
  • 2016-09-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-09-03
相关资源
最近更新 更多