--- title: minmax() slug: Web/CSS/minmax() tags: - CSS - CSS Function - CSS グリッドレイアウト - CSS 関数 - Experimental - Reference - ウェブ - レイアウト translation_of: Web/CSS/minmax() ---
minmax() は CSS の関数で、寸法の範囲を min 以上、 max 以下で定義します。 CSS グリッドで使用されます。
/* <inflexible-breadth>, <track-breadth> 値 */ minmax(200px, 1fr) minmax(400px, 50%) minmax(30%, 300px) minmax(100px, max-content) minmax(min-content, 400px) minmax(max-content, auto) minmax(auto, 300px) minmax(min-content, auto) /* <fixed-breadth>, <track-breadth> 値 */ minmax(200px, 1fr) minmax(30%, 300px) minmax(400px, 50%) minmax(50%, min-content) minmax(300px, max-content) minmax(200px, auto) /* <inflexible-breadth>, <fixed-breadth> 値 */ minmax(400px, 50%) minmax(30%, 300px) minmax(min-content, 200px) minmax(max-content, 200px) minmax(auto, 300px)
min および max の2つの引数を取る関数です。
どちらの引数も <length>, <percentage>, <flex>, またはキーワード値 max-content, min-content, auto のうちの一つを取ります。
もし min が max より大きい場合は無視され、 minmax(min,max) は min として扱われます。最大値として、 {{cssxref("flex_value","<flex>")}} 値はグリッドトラックのフレックス係数を設定します。それは min としては無効です。
<percentage> は auto として扱う必要があります。{{glossary("user agent", "ユーザーエージェント")}}は、グリッドコンテナーの寸法に対するトラックの固有の寸法の貢献度を調整し、パーセント値を尊重して最小限の量だけトラックの最終的な寸法を増加させることがあります。fr がついた負ではない寸法で、トラックのフレックス係数を指定します。それぞれの <flex> による寸法のトラックは、フレックス係数の割合に従って残りの空間を配分します。max-contentmin-contentautomax-content と同じです。最小値としては、グリッドトラックを占めるグリッドアイテムの ({{cssxref("min-width")}}/{{cssxref("min-height")}} で決定する) 最大の最小値を表します。{{csssyntax}}
minmax() 関数は次の中で使用することができます。
#container {
display: grid;
grid-template-columns: minmax(min-content, 300px) minmax(200px, 1fr) 150px;
grid-gap: 5px;
box-sizing: border-box;
height: 200px;
width: 100%;
background-color: #8cffa0;
padding: 10px;
}
#container > div {
background-color: #8ca0ff;
padding: 5px;
}
<div id="container">
<div>
Item as wide as the content, but at most 300 pixels.
</div>
<div>
Item with flexible width but a minimum of 200 pixels.
</div>
<div>
Inflexible item of 150 pixels width.
</div>
</div>
{{EmbedLiveSample("Example", "100%", 200)}}
| 仕様書 | 状態 | 備考 |
|---|---|---|
| {{SpecName("CSS Grid", "#valdef-grid-template-columns-minmax", "minmax()")}} | {{Spec2("CSS Grid")}} | 初回定義 |
{{Compat("css.properties.grid-template-columns.minmax")}}
Video tutorial: Introducing minmax()