CSS column-wrap ããããã£
Experimental: ããã¯å®é¨çãªæ©è½ã§ãã
æ¬çªã§ä½¿ç¨ããåã«ãã©ã¦ã¶ã¼äºææ§ä¸è¦§è¡¨ããã§ãã¯ãã¦ãã ããã
column-wrap 㯠CSS ã®ããããã£ã§ãCSS 段çµã¿ã¬ã¤ã¢ã¦ãã«ãããããµããæ®µã®æãè¿ãåä½ãæå®ãã¾ãã
æ§æ
/* ãã¼ã¯ã¼ã */
column-wrap: auto;
column-wrap: nowrap;
column-wrap: wrap;
/* ã°ãã¼ãã«å¤ */
column-wrap: inherit;
column-wrap: initial;
column-wrap: revert;
column-wrap: revert-layer;
column-wrap: unset;
å¤
auto-
åæå¤ã§ããã³ã³ãã³ãã³ã³ããã¼ã®
column-heightã<length>ã«è¨å®ããã¦ããå ´åãautoã¯wrapã¨ãã¦è§£éããã¾ãããã以å¤ã®å ´åã¯ãnowrapã¨ãã¦è§£éããã¾ãã nowrap-
段çµã¿ã¯è¡æ¹åã«ããµãã¾ãã
wrap-
ãªã¼ãã¼ããã¼ããæ®µã¯ããããã¯æ¹åã®æ°ããè¡ã«é ç½®ããã¾ãã
解説
column-wrap ããããã£ã使ç¨ããã¨ãCSS 段çµã¿ã¬ã¤ã¢ã¦ãã«ããã¦ã段çµã¿ã®å¹
ãåã¾ããããªãå ´åã«ãæ°ããè¡ã«æãè¿ãããã«è¨å®ã§ãã¾ãããã®ããããã£ã使ç¨ãããã¨ã§ãcolumn-count ã column-width ããããã£ã使ç¨ãã¦è¤æ°åãè¨å®ããéã«ãèªã¿ãããã¬ã¤ã¢ã¦ãã使ããã®ã«æçã§ãã
column-wrap ãæå®ããªãå ´åãä½åãªæ®µã¯æ¨ªæ¹åã«ããµããèªè
ã¯ãã¹ã¦ã®ã³ã³ãã³ããèªãããã«ã¤ã³ã©ã¤ã³æ¹åã¸ã¹ã¯ãã¼ã«ããå¿
è¦ãããã¾ããcolumn-height ããããã£ã column-wrap ã¨åããã¦ä½¿ç¨ãããã¨ã§ãåæ®µãç¹å®ã®é«ãã«è¨å®ããã³ã³ããã¼ã®ç«¯ã«éããéã«æ°ããæ®µã¸ã¨æãè¿ãããã«è¨å®ã§ãã¾ãã
column-wrap ã®ããã©ã«ãå¤ã¯ auto ã§ãããcolumn-height ã <length> å¤ã«è¨å®ããã¦ããå ´å㯠wrap ã¨ãã¦è§£éããã¾ããwrap ãæå®ããã¨ãé«ããåºå®ãããæ®µãè¤æ°è¡ã«ã¾ããã£ã¦è¡¨ç¤ºãããããã«ãªãã¾ããcolumn-height ã auto ã®å ´åãcolumn-wrap: auto 㯠nowrap ã¨ãã¦è§£éãããã³ã³ããã¼ã®é«ããè¨å®ããã¦ããå ´åã§ããæ®µãæ°´å¹³æ¹åã«ããµãããã¨ãããã¾ãã
ãã®ããã©ã«ãã®åä½ã«ãããé常㯠column-wrap ããããã£ãæç¤ºçã«è¨å®ããå¿
è¦ã¯ããã¾ããã
å ¬å¼å®ç¾©
| åæå¤ | auto |
|---|---|
| é©ç¨å¯¾è±¡ | 段çµã¿è¦ç´ |
| ç¶æ¿ | ãªã |
| è¨ç®å¤ | æå®éã |
| ã¢ãã¡ã¼ã·ã§ã³ã®ç¨®é¡ | 颿£å¤ |
形弿æ³
column-wrap =
auto |
nowrap |
wrap
ä¾
>åºæ¬çãªä½¿ãæ¹
ãã®ä¾ã§ã¯ãcolumn-wrap ããããã£ã®åºæ¬çãªä½¿ãæ¹ã示ãã¦ãããcolumn-height ããããã£ãè¨å®ãããã¨ã§ãæãè¿ãããæ®µçµã¿ã¬ã¤ã¢ã¦ãã使ãã¦ãã¾ãã
HTML
ãã¯ã¿ã¼ã»ã¹ã¼ã¹ã®è©©ãã28 åã® <li> ãå«ã¾ãã¦ãã <ol> ã§è¡¨ç¤ºãããã®å¾ã« <p> ã§ä½æè
ã®ååãè¨è¼ãã¾ãã
<ol>
<li>One fish</li>
<li>Two fish</li>
<li>Red fish</li>
<li>Blue fish</li>
...
</ol>
<p>-- Dr. Seuss</p>
CSS
<ol> ãæ®µçµã¿ã®ã³ã³ããã¼ã¨ãã¦å®ç¾©ããããã«ãcolumn-width ããããã£ã 150px ã«è¨å®ãã¾ããããã«ãããã³ã³ããã¼ã«ã¯å¯è½ãªéãå¤ãã®æ®µãå«ã¾ãã¦ãããããããã®æ®µã®å¹
ã¯å°ãªãã¨ã 150px ã«ãªãã¾ããgap ããããã£ã¯ã段éã®æ°´å¹³æ¹åã®ééã¨ã段ã®è¡éã®åç´æ¹åã®ééãè¨å®ãã¾ããããã¦ãcolumn-height ã 3em ã«è¨å®ãããã¨ã§ãcolumn-wrap ããããã£ã®ããã©ã«ãå¤ã§ãã auto ã wrap ã¨ãã¦è§£æ±ºãããæ®µã®è¡ãæãè¿ãããããã«ãªãã¾ãã
ol {
column-width: 150px;
gap: 2em;
column-height: 3em;
}
çµæ
wrap 㨠nowrap ã®æ¯è¼
ãã®ä¾ã§ã¯ã段çµã¿ã¬ã¤ã¢ã¦ããç¨ãã¦ã段çµã¿ã³ã³ããã¼ã® column-wrap ããããã£ã®å¤ã wrap 㨠nowrap ã®éã§åãæ¿ãããã¨ãã§ããwrap 㨠nowrap ã®éããè¦è¦çã«ç¢ºèªã§ãã¾ãããã®çµæãã¬ã¤ã¢ã¦ããæ°´å¹³ã¹ã¯ãã¼ã«ã¨åç´ã¹ã¯ãã¼ã«ã®éã§åçã«åãæ¿ããã¾ãã
HTML 㨠JavaScript
ãã®ä¾ã®ãã¼ã¯ã¢ããã«ã¯ãMDN ã® HTMLãCSSãJavaScript ã®åãã¼ã ãã¼ã¸ããå¼ç¨ããè¤æ°ã®æ®µè½ã®ã³ã³ãã³ãã¨ãã³ã³ããã¼ã® column-wrap ããããã£ã®å¤ã nowrap 㨠wrap ã®éã§åãæ¿ããããã® JavaScript ã使ç¨ãã <input type="checkbox"> è¦ç´ ãå«ã¾ãã¦ãã¾ããç°¡æ½ã«ãããããHTML 㨠JavaScript ã¯çç¥ãã¦ãã¾ãã
CSS
<body> è¦ç´ ã® column-count ã 3 ã«è¨å®ãããã¨ã§ã段çµã¿ã³ã³ããã¼ã«ãã¾ããããã¦ãgap ã 3em 2em ã«è¨å®ãããã¨ã§ãè¡éã®ééã 3emãåéã®ééã 2em ã«ãã¾ãã
次ã«ãcolumn-height ã 90vh ã«è¨å®ããæ®µçµã¿ã®é«ãããã¥ã¼ãã¼ãã®é«ãã«ã»ã¼åãããããã«ãã¾ããåæã«ãcolumn-wrap ã nowrap ã«è¨å®ãããã¨ã§ãã³ã³ãã³ããåã®å¹
ãè¶
ããå ´åã«æ°´å¹³æ¹åã«ããµãã¦çºçããããã«ãã¾ããããã¯ãåæå¤ã® column-wrap ã auto ã§ãããcolumn-height ã <length> å¤ã«è¨å®ããã㨠wrap ã¨ãã¦è§£éãããããããã®è¨å®ãå¿
è¦ã«ãªãã¾ãã
ãã§ãã¯ããã¯ã¹ã«ãããcolumn-wrap ããããã£ã nowrap 㨠wrap ã®éã§åãæ¿ãã¾ããwrap ã«è¨å®ããã¨ãä½ã£ãã³ã³ãã³ãã®æ®µã縦æ¹åã«æ°ããæ®µçµã¿ã®è¡ã«ããµãã¦ã縦æ¹åã®ã¬ã¤ã¢ã¦ãã使ããã¾ããcolumn-height ã®å¤ã«ãããããããã®æ®µã®è¡ããã¥ã¼ãã¼ããã£ã±ãã«è¡¨ç¤ºããã¾ãã
body {
column-count: 3;
gap: 3em 2em;
padding: 0 2em;
column-height: 90vh;
column-wrap: nowrap;
}
次ã«ã<h1> è¦ç´ ã® column-span ããããã£ã all ã«è¨å®ããè¦åºãããã¹ã¦ã®æ®µã«ã¾ãããããã«ãã¾ããã¾ããæåã® <p> ã® margin-top ããããã£ã 0 ã«è¨å®ããæ®µã®ä¸ç«¯ã¨æãããã«ãã¾ãã
h1 {
column-span: all;
}
p:first-of-type {
margin-top: 0;
}
çµæ
ãã§ãã¯ããã¯ã¹ãåãæ¿ãããã¨ã§ãcolumn-wrap ããããã£ã®å¤ã夿´ããã¬ã¤ã¢ã¦ããæ°´å¹³ã¹ã¯ãã¼ã«ã¨åç´ã¹ã¯ãã¼ã«ã®éã§åãæ¿ãããã¨ãã§ãã¾ããcolumn-wrap ã nowrap ã«è¨å®ããã¦ããå ´åãæ®µã¯æ°´å¹³æ¹åã«ããµãã¾ããcolumn-wrap ã wrap ã«è¨å®ããã¦ããå ´åãæ°ããæ®µçµã¿ã®è¡ãåç´æ¹åã«è¿½å ããã¾ãã
仿§æ¸
| 仿§æ¸ |
|---|
| CSS Multi-column Layout Module Level 2 > # propdef-column-wrap > |
ãã©ã¦ã¶ã¼ã®äºææ§
é¢é£æ å ±
column-countcolumn-widthcolumns䏿¬æå®column-height- CSS 段çµã¿ã¬ã¤ã¢ã¦ãã¢ã¸ã¥ã¼ã«