Google Web Fontsをページに含める好ましい方法は何ですか?
リンクタグ経由?
<link href = 'http://fonts.googleapis.com/css?family = Judson:400,400italic、700' rel = 'stylesheet' type = 'text/css'>
スタイルシートのインポート経由?
@import url(http://fonts.googleapis.com/css?family=Kameron:400,700);
または、Webフォントローダーを使用します
ケースの90%以上については、おそらく<link>
タグが必要です。経験則として、ファイルがフェッチされるまで含まれるリソースのロードを延期するため、@import
ルールを避ける必要があります。また、@ importを「フラット化」するビルドプロセスがある場合は、 Webフォントの別の問題:Google WebFontsのような動的プロバイダーは、プラットフォーム固有のバージョンのフォントを提供するため、単にコンテンツをインライン化すると、一部のプラットフォームでフォントが壊れてしまいます。
では、なぜWebフォントローダーを使用するのでしょうか?必要な場合completeフォントのロード方法を制御します。ほとんどのブラウザは、CSSがすべてダウンロードされて適用されるまで、画面へのコンテンツの描画を延期します-これにより、「スタイル設定されていないコンテンツのフラッシュ」問題が回避されます。欠点は..コンテンツが表示されるまで、余分な一時停止と遅延が発生する可能性があることです。 JSローダーを使用すると、フォントを表示する方法とタイミングを定義できます。たとえば、元のコンテンツを画面にペイントした後、フォントをフェードインさせることもできます。
繰り返しになりますが、90%のケースは<link>
タグです。適切なCDNを使用すると、フォントがすぐにダウンし、さらにキャッシュから提供される可能性が高くなります。
詳細およびGoogle Web Fontsの詳細については、こちらをご覧ください GDL video
フォントにバージョン管理があるためGoogleが提供する<link>
を使用しますが、そのすぐ上でHTML5の事前接続機能を使用して、ブラウザーにTCP接続を開き、fonts.gstaticでSSLを事前にネゴシエートするように依頼します.com。 <head></head>
タグに常駐する必要があることは明らかです。
<link rel="preconnect" href="https://fonts.gstatic.com/" crossorigin>
<link href="https://fonts.googleapis.com/css?family=Roboto&display=swap" rel="stylesheet">
...余分なコーディング時間がかかる場合。
それは本当に大したことではなく、Googleの簡略化された1行のリンクを開くだけです。
http://fonts.googleapis.com/css?family=Kameron:400,700
そしてそれがあなたに与えるものを見てください:
/* latin */
@font-face {
font-family: 'Kameron';
font-style: normal;
font-weight: 400;
src: local('Kameron'), url(https://fonts.gstatic.com/s/kameron/v8/vm82dR7vXErQxuzngLk6Lg.woff2) format('woff2');
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin */
@font-face {
font-family: 'Kameron';
font-style: normal;
font-weight: 700;
src: local('Kameron Bold'), local('Kameron-Bold'), url(https://fonts.gstatic.com/s/kameron/v8/vm8zdR7vXErQxuzniAIfO-rpfQ.woff2) format('woff2');
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
はい、それは他のいくつかのリクエストです。これらを直接起動する方が高速です。フォントファイルを自分のサーバーにダウンロードし、Googleの前にローカルホストURLを追加すると、さらに高速になります。私たちはCDNやparalellのリクエストが好きだということを知っています。それらはより高速であることを意図していますが、自分で試してみてください。
さて、元の質問:@importしない、<link>しない、ただこのコードを既存のグローバルCSSに直接入れてください、それはあなたのサーバーに最適です。プラスの要求は必要ありません。個別の移動ではありません-ファイルのサイズをごくわずかに増加させるだけで、要求の処理時間には実質的に何も追加されません。見るのは美しいですか?いいえ...しかし、あなたのサイトは、リビジョンよりも多くのリクエストを取得することを望みます:)だから、自分ではなくサーバーを助けてください。
全体として、1マイルの価値があると思います。
1行バージョンは、効率的であるように設計されていませんが、シンプル-可能な限り簡単な方法を望むブロガー向けです。あなたの方がよく分かっている。