--- title: fit-content() slug: Web/CSS/fit-content tags: - CSS - CSS グリッド - CSS 関数 - Experimental - Reference - Web - ウェブ - レイアウト translation_of: Web/CSS/fit-content ---
fit-content()
はCSS の関数で、指定された寸法を min(最大寸法, max(最小寸法, 引数))
の式に従って有効な寸法に制約します。
この関数は CSS グリッドのプロパティにおいて、トラックの寸法を max-content
で定義された最大寸法と auto
で定義された最小寸法との間で、 auto
と似た方法 (すなわち minmax(auto, max-content)
) で計算しますが、 auto
の最小値よりも大きい場合は 引数 がトラックの寸法になるという点が異なります。
これは {{cssxref("width")}}, {{cssxref("height")}}, {{cssxref("min-width")}}, {{cssxref("min-height")}}, {{cssxref("max-width")}}, {{cssxref("max-height")}} にレイアウトボックスの寸法としても使用され、最大寸法は内容の最大寸法、最小寸法は内容の最小寸法になります。
引数として <length>
または <percentage>
を受け付ける関数です。
/* <length> 値 */ fit-content(200px) fit-content(5cm) fit-content(30vw) fit-content(100ch) /* <percentage> 値 */ fit-content(40%)
{{csssyntax}}
#container { display: grid; grid-template-columns: fit-content(300px) fit-content(300px) 1fr; 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.</div> <div> Item with more text in it. Because the contents of it are wider than the maximum width, it is clamped at 300 pixels. </div> <div>Flexible item</div> </div>
{{EmbedLiveSample("Example", "100%", 200)}}
仕様書 | 状態 | 備考 |
---|---|---|
{{SpecName("CSS3 Sizing", "#valdef-width-fit-content-length-percentage", "fit-content()")}} | {{Spec2("CSS3 Sizing")}} | {{cssxref("width")}}, {{cssxref("height")}}, {{cssxref("min-width")}}, {{cssxref("min-height")}}, {{cssxref("max-width")}}, {{cssxref("max-height")}} のレイアウトボックスの寸法としての関数を定義。 |
{{SpecName("CSS Grid", "#valdef-grid-template-columns-fit-content", "fit-content()")}} | {{Spec2("CSS Grid")}} | トラックの寸法として使用される際の関数を定義。 |
{{Compat("css.properties.grid-template-columns.fit-content")}}