Quantcast
Channel: CSSタグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 8713

Webフォントを使う時はbold時のfont-weightを読み込んだ上で扱う

$
0
0

はじめに

Webフォントは無償のものもあり、気軽に利用できる環境になっています。中でもGoogle Fontsを利用している人も多いのではないでしょうか。私もよく使わせてもらっています。

今年、 コーディングしたものの、デザインと見比べると、boldの太さが異なるといったという事があり、Webフォントを使う時の注意点の1つを残しておこうと思います。

以下では Google FontsM PLUS 1pを利用する想定の例を挙げながら説明します。(キャプチャはMacのChrome 78.0.3904.108(Official Build) (64 ビット)で表示したものになります)

import時に単一のfont-familyで利用する時の問題

Google Fontsのページを参照して、 M PLUS 1pを利用して選択すると、

@import'https://fonts.googleapis.com/css?family=M+PLUS+1p&display=swap&subset=japanese';

というようなURLになるよ、と教えてもらえます。

ただ、これで boldを指定しようとすると以下のように、表示されます。

スクリーンショット 2019-12-07 15.27.38.png

https://codepen.io/aktuehr/pen/NWPGrPM

font-weight600以降の数値と、 boldのときに、気持ち太くなっているのに気づくでしょうか。

この太さですが、 400より少し太いくらいなのですが、 500よりは細いため、これはブラウザ側でよしなに解釈して boldの太さはこれくらいでしょうと、太くしてくれているようです。

これで問題なければ良いのですが、ブラウザに依存する形になるため、ブラウザのバージョンアップなどで太さが変わってしまうといった事があるかもしれません。

import時にfont-familyにサイズを指定して利用して、太字をきちんと表示する

意図通りの太さの boldにするためには、Webフォントのimport時に boldにあたる font-familyも指定する必要があります。

font-weightboldは、数値では 700にあたります。
https://developer.mozilla.org/ja/docs/Web/CSS/font-weight

また、通常時のフォントサイズは regularですが、数値では 400にあたります。

それぞれWebフォントに、 400700の太さが用意されている事を確認し、その2つのfont-familyを含むようにimportします。

Google Fontsの場合は以下のようになります。

@import'https://fonts.googleapis.com/css?family=M+PLUS+1p:400,700&display=swap&subset=japanese';

上記のようにしてimportしたところ、以下のように、 boldの値が何も指定しなかった時より太くなりました。
スクリーンショット 2019-12-07 16.30.40.png

https://codepen.io/aktuehr/pen/bGNVaqX

ちなみに、Chromeでは 600以上の数値を入力した場合は 700で表示されるようになっています。

boldの太さを700ではなくしたい場合

先ほど、 font-weightboldは、数値上では 700と同じと紹介しましたが、デザイン上の都合などで、「このプロジェクトでは boldはもう少し細い/太いフォントが良い」というケースが出てくることもあります。

その場合は、CSSのカスタムプロパティ (変数)やSCSSの変数などで、 boldの値を定義して使用すると毎回悩みません。

@import'https://fonts.googleapis.com/css?family=M+PLUS+1p:400,900&display=swap&subset=japanese';:root{--this-site-bold:900;}.element{font-weight:var(--this-site-bold);}

余談

全部のfont-familyを使える状況にするとこんな感じになります。

スクリーンショット 2019-12-07 16.38.00.png

https://codepen.io/aktuehr/pen/yLyYOwR

bold700となっている事が確認できますね。

さいごに

Webフォントは、ダウンロードを必要とするためページの表示速度に影響します。全てのweightfont-familyを存在させる事は稀ですが、通常(regular)と、太字(bold)だけは代表として、400,700(もしくは、フォントが指定する regularboldの数値)をimportしておくのが良いと思います。

また、デザイナーさんが別でいらっしゃる場合は、意図した太さになっているかの確認を一度取るのが良いでしょう。細かいところですが、全体の印象に関わるので大事な事だと思います。


Viewing all articles
Browse latest Browse all 8713

Latest Images

Trending Articles

<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>