16〜20px の clamp() の値
ビューポート範囲が 320px〜1280px の場合、結果は clamp(1rem, 0.9167rem + 0.4167vw, 1.25rem) です。ビューポート幅が 100px 増えるごとにサイズは 0.42px 大きくなり、768px のタブレットで約 17.9px、1024px で約 18.9px となり、1280px 以上では 20px で一定になります。
推奨値は、固定の rem 部分と vw 部分を組み合わせたものです。rem 部分は文字を読み手のブラウザのフォントサイズに結びつけ、vw 部分が変化を生み出します。レイアウトのコンテナが広がらなくなる幅がこれより狭い、または広い場合は、上のビューポート欄を変更してください。
16px〜20px を使う場面
16〜20px は、コンテンツサイトの本文の定番の範囲です。スマートフォンではブラウザ既定の 16px のまま、デスクトップでは長い行に見合った大きめのサイズで読めます。ブログ、技術ドキュメント、長文記事で特に効果を発揮します。
最大値は最小値の 1.25 倍で、WCAG 1.4.4「テキストのサイズ変更」の目安としてよく使われる 2.5 倍以内に収まっています。そのため、ブラウザのズームでもこのサイズは予測どおりに拡大されます。
数値の求め方
傾き =(20 − 16)÷(1280 − 320)= 0.0042、つまり 0.4167vw です。切片 = 16 − 傾き × 320 = 14.67px で、ルートフォントサイズ 16px なら 0.9167rem です。この 2 つの数値が clamp() の中央の引数になり、最初と最後の引数は最小値と最大値を rem に換算したものです。
プロジェクトでの使い方
値を font-size の宣言に貼り付けるか、--fluid-size のようなカスタムプロパティに格納するか、Tailwind クラス text-[clamp(1rem,0.9167rem_+_0.4167vw,1.25rem)] を使ってください。関連するサイズを一式そろえたい場合は、タイプスケール生成ツールが同じビューポート範囲で基準サイズを中心にステップを作成します。