VW(ビューポート幅)を使ったfont-size指定は、画面の幅に応じてフォントサイズが変わるので、レスポンシブデザインには役立ちます。但しvwだけで指定すると極端に小さくなったり、大きくなったりと読みずらいサイトになる場合もあるため注意が必要です。その際にはclamp()を使うことで最小フォントや最大フォントが指定できます。
参考:
body {
font-size:5vw;
}
上記ケースでは
画面幅が1000pxの場合、フォントサイズは50px
画面幅が320pxの場合、フォントサイズは16px
となります。
この場合も問題点は
小さい画面ではフォントが小さくなりすぎて読めないことがある。
大きい画面ではフォントが大きすぎてバランスが崩れることがある。
clamp()を使った調整例
clamp()を使うとフォントサイズの最小値と最大値の設定が可能になります。
clamp()
の挙動:clamp()
を優先的に使う: vw
だけでは極端なサイズ変化が起きやすいので、clamp()
で制御すると安心です。clamp()
は主要なモダンブラウザでサポートされています(IEは非対応)。vw
でのフォントサイズ指定は、レスポンシブデザインには便利ですが、そのまま使うと使いにくい場合があります。実際のプロジェクトでは、clamp()
を活用して柔軟に対応するのがおすすめです。