grid-auto-columns
Baseline
Widely available
This feature is well established and works across many devices and browser versions. Itâs been available across browsers since 2020å¹´7æ.
grid-auto-columns 㯠CSS ã®ããããã£ã§ãæé»çã«çæãããã°ãªããã®åãã©ãã¯ã¾ãã¯ãã©ãã¯ã®ãã¿ã¼ã³ã®å¤§ãããæå®ãã¾ãã
試ãã¦ã¿ã¾ããã
grid-auto-columns: auto;
grid-auto-columns: 1fr;
grid-auto-columns: min-content;
grid-auto-columns: minmax(10px, auto);
<section class="default-example" id="default-example">
<div class="example-container">
<div class="transition-all" id="example-element">
<div>One</div>
<div>Two</div>
<div>Three</div>
<div>Four</div>
<div></div>
</div>
</div>
</section>
#example-element {
border: 1px solid #c5c5c5;
display: grid;
grid-auto-rows: 40px;
grid-gap: 10px;
width: 220px;
}
#example-element > div {
background-color: rgb(0 0 255 / 0.2);
border: 3px solid blue;
}
#example-element > div:nth-child(1) {
grid-column: 1 / 3;
}
#example-element > div:nth-child(2) {
grid-column: 2;
}
ã°ãªããã¢ã¤ãã ã grid-template-columns ã§æç¤ºçã«å¤§ãããæå®ããã¦ããªãåã«é
ç½®ãããå ´åãæé»çã«ã°ãªãããã©ãã¯ãçæããããã®ã¢ã¤ãã ãä¿æãã¾ããããã«ã¯ãç¯å²å¤ã®åã«æç¤ºçã«é
ç½®ããå ´åã¨ãèªåé
ç½®ã¢ã«ã´ãªãºã ã«ãã£ã¦è¿½å ã®åãçæãããå ´åãããã¾ãã
æ§æ
/* ãã¼ã¯ã¼ãå¤ */
grid-auto-columns: min-content;
grid-auto-columns: max-content;
grid-auto-columns: auto;
/* <length> å¤ */
grid-auto-columns: 100px;
grid-auto-columns: 20cm;
grid-auto-columns: 50vmax;
/* <percentage> å¤ */
grid-auto-columns: 10%;
grid-auto-columns: 33.3%;
/* <flex> å¤ */
grid-auto-columns: 0.5fr;
grid-auto-columns: 3fr;
/* minmax() å¤ */
grid-auto-columns: minmax(100px, auto);
grid-auto-columns: minmax(max-content, 2fr);
grid-auto-columns: minmax(20%, 80vmax);
/* fit-content() å¤ */
grid-auto-columns: fit-content(400px);
grid-auto-columns: fit-content(5cm);
grid-auto-columns: fit-content(20%);
/* multiple track-size å¤ */
grid-auto-columns: min-content max-content auto;
grid-auto-columns: 100px 150px 390px;
grid-auto-columns: 10% 33.3%;
grid-auto-columns: 0.5fr 3fr 1fr;
grid-auto-columns: minmax(100px, auto) minmax(max-content, 2fr)
minmax(20%, 80vmax);
grid-auto-columns: 100px minmax(100px, auto) 10% 0.5fr fit-content(400px);
/* ã°ãã¼ãã«å¤ */
grid-auto-columns: inherit;
grid-auto-columns: initial;
grid-auto-columns: revert;
grid-auto-columns: revert-layer;
grid-auto-columns: unset;
å¤
<length>-
è² ã®å¤ã§ã¯ãªãé·ãã§ãã
<percentage>-
ã°ãªããã³ã³ããã¼ã®ã¤ã³ã©ã¤ã³æ¹åã®å¯¸æ³ã«å¯¾ããç¸å¯¾å¤ã§ãè² ã§ã¯ãªã
<percentage>ã§ããã°ãªããã³ã³ããã¼ã®ã¤ã³ã©ã¤ã³æ¹åã®å¯¸æ³ãä¸å®ã®å ´åã¯ããã¼ã»ã³ãå¤ã¯autoã®ããã«æ±ããã¾ãã <flex>-
frã®åä½ã®ä»ããè² ã®æ°ã§ã¯ãªãå¤ã§ããã©ãã¯ã®ãã¬ãã¯ã¹ä¿æ°ãæå®ãã¾ãã<flex>ã®å¯¸æ³ã®ãã©ãã¯ã¯ãæ®ãã®ç©ºéããã¬ãã¯ã¹ä¿æ°ã®å²åã«æ¯ä¾ãã¦åãåãã¾ããminmax()表è¨ã®å¤ã«ç¾ããå ´åã¯ãæå°å¤ãèªåã¨ãã¦æ±ããã¾ã (ã¤ã¾ãminmax(auto, <flex>))ã max-content-
ã°ãªãããã©ãã¯ãå æãã¦ããã°ãªããã¢ã¤ãã ã®ä¸ã§ãã³ã³ãã³ãè²¢ç®åº¦ã®æå¤§å¤ã表ããã¼ã¯ã¼ãã§ãã
min-content-
ã°ãªãããã©ãã¯ãå æãã¦ããã°ãªããã¢ã¤ãã ã®ä¸ã§ãã³ã³ãã³ãè²¢ç®åº¦ã®æå°å¤ã表ããã¼ã¯ã¼ãã§ãã
minmax(min, max)-
min 以ä¸ãmax 以ä¸ã®å¯¸æ³ã®ç¯å²ãå®ç¾©ãã颿°è¨æ³ã§ãã max ã min ããå°ããå ´åã¯ã max ã¯ç¡è¦ããã min ã¨ãã¦æ±ããã¾ãã
<flex>ã®å¤ã¯ãæå¤§å¤ã¨ãã¦ããã©ãã¯ã®ãã¬ãã¯ã¹ä¿æ°ãè¨å®ãã¾ããæå°å¤ã¨ãã¦ã¯ãã¼ãï¼ã¾ãã¯ãã°ãªããã³ã³ããã¼ã®å¯¸æ³ãæå°ã³ã³ãã³ãã®å¶ç´ãåãã¦ããå ´åã¯ãæå°ã³ã³ãã³ãï¼ã¨ãã¦æ±ããã¾ãã fit-content( [ <length> | <percentage> ] )-
min(max-content, max(auto, argument))ã¨ããå¼ã表ãã¾ãããã®å¼ã¯ããã©ãã¯ã®å¯¸æ³ãautoã®æå°å¤ããã大ããå ´åã« argument ã§åºå®ããããã¨ãé¤ãã¦ãautoã¨åæ§ (ããªãã¡minmax(auto, max-content)) ã«è¨ç®ããã¾ãã auto-
æå¤§å¤ã¨ãã¦ã¯ããã®ãã©ãã¯å ã®ã¢ã¤ãã ã®æå¤§ã®
max-contentã®ãµã¤ãºã表ãã¾ããæå°å¤ã¨ãã¦ã¯ããã®ãã©ãã¯å ã®ã¢ã¤ãã ã®æå¤§ã®æå°ãµã¤ãºï¼ã¢ã¤ãã ã®
min-width/min-heightã§æå®ãã¾ãï¼ã表ãã¾ããããã¯å¸¸ã«ã§ã¯ããã¾ããããmin-contentã®ãµã¤ãºã§ãããã¨ãå¤ãã§ããminmax()表è¨ã®å¤ã§ä½¿ç¨ããå ´åãautoã¯ä¸è¨ã®æå°å¤ã¨æå¤§å¤ã®éã®ç¯å²ã表ãã¾ããããã¯ã»ã¨ãã©ã®å ´åãminmax(min-content,max-content)ã¨åæ§ã®åä½ããã¾ããã¡ã¢: ãã©ãã¯ã®å¯¸æ³ã
autoã®å ´åã¯ãalign-contentã¨justify-contentã®ããããã£ã«ãã£ã¦å¼ã伸ã°ããã¨ãã§ãã¾ããå¾ã£ã¦æ¢å®ã§ã¯ãautoãµã¤ãºã®ãã©ãã¯ã¯ã°ãªããã³ã³ããã¼ã®æ®ãã®ç©ºéãå ãã¾ãã
å ¬å¼å®ç¾©
| åæå¤ | auto |
|---|---|
| é©ç¨å¯¾è±¡ | ã°ãªããã³ã³ããã¼ |
| ç¶æ¿ | ãªã |
| ãã¼ã»ã³ãå¤ | ã³ã³ãã³ãé åã®å¯¾å¿ãã寸æ³ã«å¯¾ããç¸å¯¾å¤ |
| è¨ç®å¤ | æå®ããããã¼ã»ã³ãå¤ã¾ãã¯çµ¶å¯¾çãªé·ã |
| ã¢ãã¡ã¼ã·ã§ã³ã®ç¨®é¡ | è¨ç®å¤ã®åã«ãã |
形弿æ³
grid-auto-columns =
<track-size>+
<track-size> =
<track-breadth> |
minmax( <inflexible-breadth> , <track-breadth> ) |
fit-content( <length-percentage [0,â]> )
<track-breadth> =
<length-percentage [0,â]> |
<flex [0,â]> |
min-content |
max-content |
auto
<inflexible-breadth> =
<length-percentage [0,â]> |
min-content |
max-content |
auto
<length-percentage> =
<length> |
<percentage>
ä¾
>ã°ãªããåã®å¯¸æ³ãè¨å®
HTML
<div id="grid">
<div id="item1"></div>
<div id="item2"></div>
<div id="item3"></div>
</div>
CSS
#grid {
height: 100px;
display: grid;
grid-template-areas: "a a";
gap: 10px;
grid-auto-columns: 200px;
}
#grid > div {
background-color: lime;
}
çµæ
仿§æ¸
| Specification |
|---|
| CSS Grid Layout Module Level 2> # auto-tracks> |