今日はやたらと連投しております!!色々メモしときたかった事が多いんですねぇ。。。
これもその一つ!!ホント今更かよ感が凄いですが。。。CSS3の目玉商品、@font-faceを試してみましたっ!!

突然使いだした経緯

今まで日本語のWebフォントは速度低下させる原因でしかないので、Web Fontを使ったとしてもGoogle Fontsにある英字のみでした。
ところが最近の案件のほとんどが、何故か日本語はNoto Sans JP使ってくださいーと言われるようになり。。。
普通にCSSでimportしてたのですが、もしかして違うんじゃね?と違和感を覚えました。

// 普通にインクルード
@import url(//fonts.googleapis.com/earlyaccess/notosansjp.css);

感じた違和感

上記の通り、普通に何も考えずインクルードしていたのですが、何か読み込み遅いなぁと思いつつも、こういうもんだ。と思っていました。
しかし、Noto Sans JPにはウェイトが沢山あり、もしかするとこれを全部読み込んでいるからでは?と閃きます。

というのも、実際に使っているのはレギュラー(400)とボールド(700)くらいであり、その他のウェイトは特に必要ありません。
上記のインクルードURLを確認してみると、やはり全ウェイトに対応しているようです。(内部的に全部読み込んでいるかは不明)

これは直す価値があるのでは!?

とりあえずやってみる

そういった経緯があり、必要なウェイトだけを読み込めば、速度向上するのではないかと思い、早速試してみることに!!
初font-faceでイマイチやり方が分かりませんでしたが、そんなに難しくはなかった。。。
とりあえず読み込みは以下で出来ました!!

@font-face {
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 400;
    src: local("Noto Sans CJK JP Regular"),
      url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Regular.woff2) format('woff2'),
      url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Regular.woff) format('woff'),
      url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Regular.otf) format('opentype');
}
@font-face {
  font-family: 'Noto Sans JP';
  font-style: bold;
  font-weight: 700;
    src: local("Noto Sans CJK JP Bold"),
      url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Bold.woff2) format('woff2'),
      url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Bold.woff) format('woff'),
      url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Bold.otf) format('opentype');
}

srcにlocal(○○○)を入れることで、クライアントのローカルにフォントがあれば、それを利用する。といった意味があるそうです。
確かに無駄な読み込みが無くなるので、記述しといた方がいいかと!!

あとは、いつも通りfont-familyで指定するだけ!

$sanserif : 'Noto Sans JP', "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, "MS Pゴシック", sans-serif;

body{
  font-family: $sansserif;
}

こんな感じでしょうか!?

結果

試しにやってみようと思った程度でしたが、速度があがりました。。。
ボクの推測が正しいのかどうかは不明ですが、少なくても今後はこの指定で良いかなぁと感じました。

Noto Sans JPで速度が落ちている気がする方は、一度試してみる価値があるかも!?

以上、初@font-faceを使ってみたお話でした〜!
ありがとうございましたっ!!