一連の筋を繰り返すための記法。
<DIV style="border:1px solid red; width:180px; display:grid; grid-template:50px 70px/repeat(3, 50px); "> <DIV style="border:1px solid black;">1</DIV> <DIV style="border:1px solid black;">2</DIV> <DIV style="border:1px solid black;">3</DIV> <DIV style="border:1px solid black;">4</DIV> </DIV>
auto-fill
●
<DIV style="border:1px solid red; width:180px; display:grid; grid-template:50px 70px/repeat(auto-fill, 50px); "> <DIV style="border:1px solid black;">1</DIV> <DIV style="border:1px solid black;">2</DIV> <DIV style="border:1px solid black;">3</DIV> <DIV style="border:1px solid black;">4</DIV> </DIV>
auto-fit
●
<DIV style="border:1px solid red; width:180px; display:grid; grid-template:50px 70px/repeat(auto-fit, 50px); "> <DIV style="border:1px solid black;">1</DIV> <DIV style="border:1px solid black;">2</DIV> <DIV style="border:1px solid black;">3</DIV> <DIV style="border:1px solid black;">4</DIV> </DIV>
筋リスト。<integer> 分の回数だけ繰り返される。
<DIV style="border:1px solid red; width:280px; display:grid; grid-template:50px 70px/repeat(auto-fill, 40px 60px); "> <DIV style="border:1px solid black;">1</DIV> <DIV style="border:1px solid black;">2</DIV> <DIV style="border:1px solid black;">3</DIV> <DIV style="border:1px solid black;">4</DIV> <DIV style="border:1px solid black;">5</DIV> </DIV>
いくつか制約がある:
[
' <custom-ident>* ']
'
<DIV style="border:1px solid red; width:200px; display:grid; grid-template:50px 70px/repeat(3, auto); "> <DIV style="border:1px solid black;">1</DIV> <DIV style="border:1px solid black;">2</DIV> <DIV style="border:1px solid black;">3</DIV> <DIV style="border:1px solid black;">4</DIV> </DIV>
minmax( <inflexible-breadth> , <track-breadth> )
<DIV style="border:1px solid red; width:200px; display:grid; grid-template:50px 70px/repeat(3, minmax(40px, 60px)); "> <DIV style="border:1px solid black;">1</DIV> <DIV style="border:1px solid black;">2</DIV> <DIV style="border:1px solid black;">3</DIV> <DIV style="border:1px solid black;">4</DIV> </DIV>
<DIV style="border:1px solid red; width:100px; display:grid; grid-template:50px 70px/repeat(3, minmax(40px, 60px)); "> <DIV style="border:1px solid black;">1</DIV> <DIV style="border:1px solid black;">2</DIV> <DIV style="border:1px solid black;">3</DIV> <DIV style="border:1px solid black;">4</DIV> </DIV>
fit-content( <length-percentage> )
<DIV style="border:1px solid red; width:200px; display:grid; grid-template:50px 70px/repeat(3, fit-content(40px)); "> <DIV style="border:1px solid black;">1</DIV> <DIV style="border:1px solid black;">2</DIV> <DIV style="border:1px solid black;">3</DIV> <DIV style="border:1px solid black;">4</DIV> </DIV>¶
百分率値は、[column 筋/row 筋]においては格子コンテナ コンテナ の内縁[行内サイズ/ブロックサイズ]に相対的になる。コンテナ のサイズが その各筋のサイズに依存する場合の百分率値は、まず、コンテナ の内在的サイズを計算する目的においては、auto として扱った上で、コンテナ 内にアイテムをレイアウトする目的においては、その結果のサイズに相対的に解決するものとする。
注記: flex 係数の総和が 1 未満の場合、筋たちは残余空間の対応する割合分のみを占める ― 全体を埋めるよう拡げられることはない。
minmax() 記法の外側に現れるときは、自動的な最小(すなわち、minmax(auto, <flex> ) )を意味する。
<DIV style="border:1px solid red; width:200px; display:grid; grid-template:50px 70px/repeat(3, 1fr 2fr); "> <DIV style="border:1px solid black;">1</DIV> <DIV style="border:1px solid black;">2</DIV> <DIV style="border:1px solid black;">3</DIV> <DIV style="border:1px solid black;">4</DIV> </DIV>
min-content
<DIV style="border:1px solid red; width:100px; display:grid; grid-template:50px 70px/repeat(3, minmax(min-content,60px)); "> <DIV style="border:1px solid black;">1</DIV> <DIV style="border:1px solid black;">2</DIV> <DIV style="border:1px solid black;">3</DIV> <DIV style="border:1px solid black;">4</DIV> </DIV>
max-content
<DIV style="border:1px solid red; width:100px; display:grid; grid-template:50px 70px/repeat(3, minmax(max-content,60px)); "> <DIV style="border:1px solid black;">1</DIV> <DIV style="border:1px solid black;">2</DIV> <DIV style="border:1px solid black;">3</DIV> <DIV style="border:1px solid black;">4</DIV> </DIV>
<DIV style="border:1px solid red; width:200px; display:grid; grid-template:50px 70px/repeat(3, minmax(max-content,60px)); "> <DIV style="border:1px solid black;">1</DIV> <DIV style="border:1px solid black;">2</DIV> <DIV style="border:1px solid black;">3</DIV> <DIV style="border:1px solid black;">4</DIV> </DIV>
auto
最小としては、max(筋を占めている各 格子アイテムの最小サイズ) を表現する。(これは、初期時には min-content による最小に等しくなることが多いが、常にではない ― § 格子アイテムの自動的な最小サイズを見よ。)
minmax() 記法の外側に現れるときは、minmax(auto, auto) に等価になり、上で述べた最小から最大までの範囲を表現する(ほとんどの基本的な事例では, minmax(min-content, max-content) と同様にふるまうが、追加の能もある)。
<DIV style="border:1px solid red; width:200px; display:grid; grid-template:50px 70px/repeat(3, minmax(auto,60px)); "> <DIV style="border:1px solid black;">1</DIV> <DIV style="border:1px solid black;">2</DIV> <DIV style="border:1px solid black;">3</DIV> <DIV style="border:1px solid black;">4</DIV> </DIV>
<DIV style="border:1px solid red; width:200px; display:grid; grid-template:50px 70px/repeat(3, minmax(40px, auto)); "> <DIV style="border:1px solid black;">1</DIV> <DIV style="border:1px solid black;">2</DIV> <DIV style="border:1px solid black;">3</DIV> <DIV style="border:1px solid black;">4</DIV> </DIV>
minmax(min, max)
[min ~ max]のサイズ範囲を定義する。min > max の場合、max は min 以上に切り上げられる(本質的に、minmax(min, min) を得る)。max に対する <flex> 値は,筋の flex 係数を設定し、min に対するそれは、無効になるとする。
注記: この仕様の将来レベルでは、min に対する <flex> 値も許容され、それを正しく織り込むために筋サイズ法アルゴリズムを更新することになる。
fit-content( <length-percentage> )
max( 最小, min( 上限, max-content ) ) を表現する。
ここで、最小は auto による最小を表現する(これは、min-content による最小に等しくなることが多いが、常にではない)
上限は fit-content() の引数に渡された筋サイズ法関数。これは、本質的には、min( minmax(auto, max-content), minmax(auto, 上限) ) として計算される。
表示内容: |
表示内容: |