Widely available 安心して使用可能。主要ブラウザで広くサポートされている。

対応ブラウザ

機能 デスクトップ モバイル
Chrome
Edge
Firefox
Safari
Chrome Android
Safari iOS
79
79
75
13.1
79
13.4

max() は CSS の関数で、 CSS プロパティの値としてカンマで区切られた式のリストから最大の (最も正である) 値を設定できます。 max() 関数は <length>、<frequency>、angle、<time>、<percentage>、<number>、<integer> が使用できるところならばどこでも使用することができます。

79
79
75
11.1
79
11.3

min() は CSS の関数で、 CSS プロパティの値としてカンマで区切られた式のリストから最小の (最も負である) 値を設定できます。 min() 関数は <length>、<frequency>、angle、<time>、<percentage>、<number>、<integer> が使用できるところならばどこでも使用することができます。

79
79
75
11.1
79
11.3
1+対応 (バージョン) 未対応 注釈あり サブ機能の解説は MDN Web Docs (CC BY-SA 2.5)

基本構文

CSS
.container {
  /* Limit maximum width to 1200px */
  width: min(100% - 2rem, 1200px);
}

.heading {
  /* Fluid font size (range of 24px to 48px) */
  font-size: clamp(1.5rem, 4vw, 3rem);
}

.card {
  /* Ensure a minimum width of 300px */
  width: max(300px, 30vw);
}

ライブデモ

min() で最大幅制限

min(), max(), clamp() の min() で最大幅制限 パターンです。

プレビュー全画面表示

clamp() フォント

min(), max(), clamp() の clamp() フォント パターンです。

プレビュー全画面表示

max() で最小保証

min(), max(), clamp() の max() で最小保証 パターンです。

プレビュー全画面表示

実務での使いどころ

  • 流動的タイポグラフィ

    clamp() でビューポート幅に応じてフォントサイズが滑らかに変化し、上限・下限も保証する。

  • レスポンシブコンテナ

    min() でコンテナ幅に上限を設け、小さい画面では全幅に広がるレイアウト。

注意点

  • clamp() の第1引数が第3引数より大きい場合、第1引数(最小値)が優先される。
  • ブラウザの最小フォントサイズ設定により、clampの最小値が無視される場合がある。

アクセシビリティ

  • clamp() でフォントサイズを制限する際、ユーザーがブラウザでズームした場合に文字が十分に拡大されるか確認する。