段çµã¿ã¬ã¤ã¢ã¦ã
段çµã¿ã¬ã¤ã¢ã¦ãã®ä»æ§ã§ã¯ãæ°èã«è¦ããããããªãã³ã³ãã³ããæ®µã«ã¬ã¤ã¢ã¦ãããæ¹æ³ãæä¾ããã¦ãã¾ãã ãã®è¨äºã§ã¯ããã®æ©è½ã®ä½¿ãæ¹ã«ã¤ãã¦èª¬æãã¾ãã
| åæç¥è: | HTML ã®åºæ¬ï¼HTML ã«ããã³ã³ãã³ãã®æ§é åã§å¦ã¶ï¼ãããã³ CSS ã®æ©è½ã®èãæ¹ï¼CSS ã«ããã¹ã¿ã¤ã«è¨å®ã®åºæ¬ã§å¦ã¶ï¼ã |
|---|---|
| ç®ç: | ã¦ã§ããã¼ã¸ä¸ã§ãæ°èã«è¦ããããããªã段çµã¿ã¬ã¤ã¢ã¦ãã使ããæ¹æ³ãå¦ã¶ãã¨ã |
åºæ¬çãªä¾
ããã§ã¯ã段çµã¿ã¬ã¤ã¢ã¦ãï¼multicol ã¨ãå¼ã°ããï¼ã®ä½¿ç¨æ¹æ³ãæ¢ãã¾ããæ®µçµã¿ã®åºçºç¹ãã¡ã¤ã«ããã¦ã³ãã¼ããã¦ãé©åãªå ´æã« CSS ã追å ãã¦ããã¨ã追ãããããã¨ãã§ãã¾ãããã®ç« ã®ä¸çªä¸ã«ã¯ãæçµçãªã³ã¼ããã©ã®ããã«ãªãã®ãã®ä¾ãããã¾ãã
3 段çµã¿ã¬ã¤ã¢ã¦ã
åºçºç¹ã®ãã¡ã¤ã«ã«ã¯ãããã¤ãã®é常ã«åç´ãª HTML ãå«ãã§ãã¾ãã container ã®ã¯ã©ã¹ãæã¤ã©ããã¼ã«ãè¦åºãã¨ããã¤ãã®æ®µè½ãå
¥ã£ã¦ãã¾ãã
container ã®ã¯ã©ã¹ãæã¤ <div> ããæ®µçµã¿ã³ã³ããã¼ã¨ãã¾ãã 2 ã¤ã®ãããã㣠column-count ã¾ã㯠column-width ã®ããããã使ç¨ãã¦ã段çµã¿ããªã³ã«ãã¾ãã column-count ããããã£ã¯ä¸ããå¤ã¨åãæ°ã®æ®µ (column) ã使ããã®ã§ãã¹ã¿ã¤ã«ã·ã¼ãã«æ¬¡ã® CSS ãå ãã¦ããã¼ã¸ãåèªã¿è¾¼ã¿ããã°ã 3 段çµã¿ãå®ç¾ã§ããã§ãããã
.container {
column-count: 3;
}
使ããåæ®µã®å¹ ã¯æè»ã«è¨å®ã§ãã¾ãããã©ã¦ã¶ã¼ã¯å段ã«å²ãå½ã¦ã空éãã©ãã ã確ä¿ããããè¨ç®ãã¾ãã
column-width ã®è¨å®
次ã®ããã« CSS ã夿´ã㦠column-width ã使ç¨ãã¾ãã
.container {
column-width: 200px;
}
ããã§ãã©ã¦ã¶ã¼ã¯ãã§ããã ãå¤ãã®ãæå®ãããµã¤ãºã®æ®µçµã¿ãã§ããããã«ãªãã¾ããæ®ãã®ç©ºéã¯ãæ¢åã®æ®µã®éã§å ±æããã¾ããã¤ã¾ããã³ã³ããã¼ããã®å¹ ã§æ£ç¢ºã«åå²ã§ããªãéããæå®ããå¹ ãæ£ç¢ºã«åå¾ãããã¨ã¯ã§ãã¾ããã
段ã®ã¹ã¿ã¤ã«è¨å®
段çµã¿ã«ãã£ã¦ä½æãããæ®µãåå¥ã«ã¹ã¿ã¤ã«è¨å®ãããã¨ã¯ã§ãã¾ããã 1 ã¤ã®æ®µãä»ã®æ®µãã大ããããããåä¸ã®æ®µã®èæ¯è²ãããã¹ãã®è²ã夿´ãããããæ¹æ³ã¯ããã¾ããã æ®µã®è¡¨ç¤ºæ¹æ³ã夿´ããæ©ä¼ã¯æ¬¡ã® 2 ã¤ãããã¾ãã
column-gapã使ç¨ãã¦æ®µéã®ãµã¤ãºã夿´ãã¾ããcolumn-ruleã使ç¨ãã¦æ®µéã«ç·ã追å ãã¾ãã
ä¸ã®ä¾ãç¨ãã¦ã column-gap ããããã£ã追å ãã¦ã®ã£ããã®å¤§ããã夿´ãã¦ã¿ã¾ãããããã®ããããã£ã¯ã©ã®ãããªé·ãã®åä½ãåãå
¥ãã¾ãã
ä»åº¦ã¯ column-rule ã§ã段ã®éã«ç·ï¼ruleã罫ç·ï¼ã追å ãã¾ãã åã®ã¬ãã¹ã³ã§ééãã border ããããã£ã¨åæ§ã«ãcolumn-rule 㯠column-rule-colorãcolumn-rule-styleãcolumn-rule-width ã®ä¸æ¬æå®ã§ãborder ã¨åãå¤ãåãå
¥ãã¾ãã
.container {
column-count: 3;
column-gap: 20px;
column-rule: 4px dotted rgb(79 185 227);
}
ãã¾ãã¾ãªã¹ã¿ã¤ã«ãè²ã®ç·ã追å ãã¦ã¿ã¦ãã ããã
注æãã¹ããã¨ã¯ãç·ãããèªä½ã®å¹
ãå ãããã¨ã¯ãªãã¨ãããã¨ã§ãã column-gap ã§ä½ã£ãééã®ä¸ã«åããã¾ãã ç·ã®ä¸¡å´ã«ç©ºéãå¢ããã«ã¯ãcolumn-gap ã®ãµã¤ãºãå¢ããå¿
è¦ãããã¾ãã
段ãã¾ããã
è¦ç´ ããã¹ã¦ã®æ®µã«ã¾ãããããã«ãããã¨ãã§ãã¾ãããã®å ´åãã³ã³ãã³ãã¯ã¾ãããè¦ç´ ãç»å ´ããã¨ããã§éåãããã®è¦ç´ ã®ä¸ã§ç¶ããæ°ããæ®µçµã¿ã使ããã¾ããè¦ç´ ããã¹ã¦ã®æ®µçµã¿ã«ã¾ãããããã«ããã«ã¯ã all ã column-span ããããã£ã«æå®ãã¾ãã
ã¡ã¢:
è¦ç´ ãä¸é¨ã®åã«ã®ã¿ã¾ãããããã«ãããã¨ã¯ã§ãã¾ãããããããã£ã¯ noneï¼ãããæ¢å®å¤ã§ãï¼ã all ã®å¤ãã示ããã¨ãã§ãã¾ããã
æ®µã¨æçå
段çµã¿ã®ã¬ã¤ã¢ã¦ãã®ã³ã³ãã³ãã¯æçåããã¾ããããã¯åºæ¬çã«ãã¦ã§ããã¼ã¸ãåºåããã¨ããªã©ããã¼ã¸ã¡ãã£ã¢ã«ãããã³ã³ãã³ãã®æ¯ãèãã¨åãã§ããã³ã³ãã³ããæ®µçµã¿ã³ã³ããã¼ã«ããã¨ãã³ã³ãã³ãã¯æ®µã«åå²ããã¾ããã³ã³ãã³ãããã®ããã«ãªãããã«ã¯ãåå²ããå¿ è¦ãããã¾ãã
æçåãããããã¯ã¹
æã«ã¯ããã®ãããªåå²ãé ç½®ããããã¨ã§ãèªã¿ããããæãªããããã¨ãããã¾ããä¸è¨ã®ä¾ã§ã¯ãä¸é£ã®ããã¯ã¹ãã¬ã¤ã¢ã¦ãããããã«æ®µçµã¿ã使ç¨ãã¦ãããããããã®ããã¯ã¹ã«ã¯è¦åºãã¨ããã¹ããããã¾ããè¦åºãã¨æ¬æã®éã§æ®µãåå²ãããã¨ãè¦åºãã¨æ¬æãåé¢ãã¦ãã¾ãã¾ãã
<div class="container">
<div class="card">
<h2>ããã¯è¦åºã</h2>
<p>
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla luctus
aliquam dolor, eu lacinia lorem placerat vulputate. Duis felis orci,
pulvinar id metus ut, rutrum luctus orci. Cras porttitor imperdiet nunc,
at ultricies tellus laoreet sit amet. Sed auctor cursus massa at porta.
Integer ligula ipsum, tristique sit amet orci vel, viverra egestas ligula.
</p>
</div>
<div class="card">
<h2>ããã¯è¦åºã</h2>
<p>
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla luctus
aliquam dolor, eu lacinia lorem placerat vulputate. Duis felis orci,
pulvinar id metus ut, rutrum luctus orci. Cras porttitor imperdiet nunc,
at ultricies tellus laoreet sit amet. Sed auctor cursus massa at porta.
Integer ligula ipsum, tristique sit amet orci vel, viverra egestas ligula.
</p>
</div>
<div class="card">
<h2>ããã¯è¦åºã</h2>
<p>
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla luctus
aliquam dolor, eu lacinia lorem placerat vulputate. Duis felis orci,
pulvinar id metus ut, rutrum luctus orci. Cras porttitor imperdiet nunc,
at ultricies tellus laoreet sit amet. Sed auctor cursus massa at porta.
Integer ligula ipsum, tristique sit amet orci vel, viverra egestas ligula.
</p>
</div>
<div class="card">
<h2>ããã¯è¦åºã</h2>
<p>
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla luctus
aliquam dolor, eu lacinia lorem placerat vulputate. Duis felis orci,
pulvinar id metus ut, rutrum luctus orci. Cras porttitor imperdiet nunc,
at ultricies tellus laoreet sit amet. Sed auctor cursus massa at porta.
Integer ligula ipsum, tristique sit amet orci vel, viverra egestas ligula.
</p>
</div>
<div class="card">
<h2>ããã¯è¦åºã</h2>
<p>
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla luctus
aliquam dolor, eu lacinia lorem placerat vulputate. Duis felis orci,
pulvinar id metus ut, rutrum luctus orci. Cras porttitor imperdiet nunc,
at ultricies tellus laoreet sit amet. Sed auctor cursus massa at porta.
Integer ligula ipsum, tristique sit amet orci vel, viverra egestas ligula.
</p>
</div>
<div class="card">
<h2>ããã¯è¦åºã</h2>
<p>
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla luctus
aliquam dolor, eu lacinia lorem placerat vulputate. Duis felis orci,
pulvinar id metus ut, rutrum luctus orci. Cras porttitor imperdiet nunc,
at ultricies tellus laoreet sit amet. Sed auctor cursus massa at porta.
Integer ligula ipsum, tristique sit amet orci vel, viverra egestas ligula.
</p>
</div>
<div class="card">
<h2>ããã¯è¦åºã</h2>
<p>
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla luctus
aliquam dolor, eu lacinia lorem placerat vulputate. Duis felis orci,
pulvinar id metus ut, rutrum luctus orci. Cras porttitor imperdiet nunc,
at ultricies tellus laoreet sit amet. Sed auctor cursus massa at porta.
Integer ligula ipsum, tristique sit amet orci vel, viverra egestas ligula.
</p>
</div>
</div>
.container {
column-width: 250px;
column-gap: 20px;
}
.card {
background-color: rgb(207 232 220);
border: 2px solid rgb(79 185 227);
padding: 10px;
margin-bottom: 1em;
}
break-inside ã®è¨å®
ãã®ãµãã¾ããå¶å¾¡ããããã«ãCSS æçåã®ä»æ§ã®ããããã£ã使ç¨ã§ãã¾ãã ãã®ä»æ§ã¯ã段çµã¿ã¨ãã¼ã¸ä»ãã¡ãã£ã¢ã§ã®ã³ã³ãã³ãã®åå²ãå¶å¾¡ããããã®ããããã£ãæä¾ãã¾ãã ä¾ãã°ã break-inside ã avoid ã®å¤ã§ .card ã®ã«ã¼ã«ã«è¿½å ãããã¨ãã§ãã¾ããããã¯è¦åºãã¨ããã¹ãã®æçåããããªãã³ã³ããã¼ã¨ãªãã¾ãã
.card {
break-inside: avoid;
background-color: rgb(207 232 220);
border: 2px solid rgb(79 185 227);
padding: 10px;
margin-bottom: 1em;
}
ãã®ããããã£ã追å ãããã¨ã§ãããã¯ã¹ã¯ 1 ã¤ã«ã¾ã¨ã¾ãããã«ãªããããã§æ®µãã¾ããã£ã¦åå²ããããã¨ã¯ãªããªãã¾ãã
ã¾ã¨ã
ããã§ãæ§ç¯ä¸ã®ãã¶ã¤ã³ã®ã¬ã¤ã¢ã¦ãæ¹æ³ã鏿ããã¨ãã«ãæã®ã¾ã¾ã«ã§ããããä¸ã¤ã®ãã¼ã«ã§ããæ®µçµã¿ã¬ã¤ã¢ã¦ãã®åºæ¬æ©è½ã®ä½¿ç¨æ¹æ³ããããã¾ããã