40〜80px の clamp() の値
ビューポート範囲が 320px〜1280px の場合、結果は clamp(2.5rem, 1.6667rem + 4.1667vw, 5rem) です。ビューポート幅が 100px 増えるごとにサイズは 4.17px 大きくなり、768px のタブレットで約 58.7px、1024px で約 69.3px となり、1280px 以上では 80px で一定になります。
推奨値は、固定の rem 部分と vw 部分を組み合わせたものです。rem 部分は文字を読み手のブラウザのフォントサイズに結びつけ、vw 部分が変化を生み出します。レイアウトのコンテナが広がらなくなる幅がこれより狭い、または広い場合は、上のビューポート欄を変更してください。
40px〜80px を使う場面
40〜80px は、見出しそのものが主役となるヒーローの大見出しやキャンペーンのランディングページ向けです。320px で長い単語を確認してください。40px ではハイフネーションや文言の短縮が必要になることがあります。
最大値は最小値の 2 倍で、WCAG 1.4.4「テキストのサイズ変更」の目安としてよく使われる 2.5 倍以内に収まっています。そのため、ブラウザのズームでもこのサイズは予測どおりに拡大されます。
数値の求め方
傾き =(80 − 40)÷(1280 − 320)= 0.0417、つまり 4.1667vw です。切片 = 40 − 傾き × 320 = 26.67px で、ルートフォントサイズ 16px なら 1.6667rem です。この 2 つの数値が clamp() の中央の引数になり、最初と最後の引数は最小値と最大値を rem に換算したものです。
プロジェクトでの使い方
値を font-size の宣言に貼り付けるか、--fluid-size のようなカスタムプロパティに格納するか、Tailwind クラス text-[clamp(2.5rem,1.6667rem_+_4.1667vw,5rem)] を使ってください。関連するサイズを一式そろえたい場合は、タイプスケール生成ツールが同じビューポート範囲で基準サイズを中心にステップを作成します。