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);
}

ライブデモ

maxwidthlimit with min()

maxwidthlimit demo. with min(), max(), clamp() min()

プレビュー全画面表示

Clamp() font

min(), max(), clamp() Clamp() font demo.

プレビュー全画面表示

min with max

min demo. with min, max, clamp max

プレビュー全画面表示

実務での使いどころ

  • 流動的タイポグラフィ

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

  • レスポンシブコンテナ

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

注意点

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

アクセシビリティ

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