
äžè¬æ å ±
WebããŒãžã®ç¹å®ã®èŠçŽ ã«ã€ããŠè©±ããŠãããšãã«ããããã©ãããŒãŸãã¯ã³ã³ããã§ããããšãç¥ã£ãå Žåãããã¯å®éã«ã¯ãç®ã®åã«å¥ã®èŠçŽ ã«ãã©ããããããŠããããŸãã¯ãé 眮ãããŠãããèŠçŽ ã®ã°ã«ãŒããããããšãæå³ããŸãã ããã®èŠçŽ ã®äžãWebããŒãžãã«ã¹ã¿ãã€ãºãããšãã«ãè¿œå ã®èŠçŽ ã䜿çšãããã³ã³ããã®åœ¹å²ãèŠçŽ ã«å²ãåœãŠã
<body>
å Žåããã®èŠçŽ ã次ã®ããã«ã¹ã¿ã€ã«èšå®ã§ããŸãã
body {
max-width: 1170px;
margin-left: auto;
margin-right: auto;
padding-left: 16px;
padding-right: 16px;
}
ããããä»æ¥ã®ç°å¢ã§ã¯ãèŠçŽ ãã³ã³ãããšããŠäœ¿çšãã
<body>
ããšã¯çŸå®çã§ã¯ãªãå ŽåããããŸããã³ã³ããã䜿çšãããšãåäŸãåœå¢ãé¢ããããšãé²æ¢ã§ããŸãã

ã³ã³ããã¯ãåäŸãã¡ãåœå¢ãè¶ããŠç§»åããããšãèš±å¯ããŠããŸãã
ãããŒãžã®åŽé¢ãšã¡ã€ã³é åããããŸãããããã®é åã¯ã©ã¡ããã³ã³ããèŠçŽ ã®äžã«ãããŸãã圌ã«ã¯ã¯ã©ã¹ãå²ãåœãŠãããŠã
.wrapper
ãŸãããã¡ãããã³ã³ããã®ä»ã®ããããã£ã®äžã§ããã®å¹
ã瀺ãããŠããŸãããã®ãããªããŒãžã®HTMLã³ãŒãã®æ§é ã¯æ¬¡ã®ããã«ãªããŸãã
<div class="wrapper">
<aside>...</aside>
<main>...</main>
</div>
ã©ãããŒèŠçŽ ã䜿çšããªãå ŽåãåèŠçŽ ã¯ç»é¢ã®ç«¯ã«çŠç¹ãåãããŠé 眮ãããŸããããã¯ãŠãŒã¶ãŒã«ãšã£ãŠäžäŸ¿ãªå ŽåããããŸããç¹ã«å€§ç»é¢ã§äœæ¥ããŠãã人ã®ããã«ã

ã³ã³ãã³ããå«ãã³ã³ãããŒèŠçŽ ã®ãªãããŒãž
ããã¯ãèŠçŽ ãç»é¢å šäœã«åºããããã«äŒžã³ãæ§åã瀺ããŠããŸããããã¯ãããŒãžã¬ã€ã¢ãŠãã«ã³ã³ãããŒèŠçŽ ããªãå Žåã«çºçããŸãããã®ãããªããŒãžã§ã®äœæ¥ããŠãŒã¶ãŒã«ä¿ãã¹ãã§ã¯ãªãã§ãããããã®èãã説æãããŠãã ããã
WebããŒãžã®ã³ã³ãã³ãã«ã³ã³ãããŒã䜿çšããå¿ èŠæ§ã«ã€ããŠ
Webã³ã³ãã³ãã®ã³ã³ãããŒã䜿çšããããšã«ã¯ãèšèšè ãšéçºè ãç¥ã£ãŠããã¹ãå€ãã®å©ç¹ããããŸãããããã®é·æã®ããã€ãã次ã«ç€ºããŸãã
- ã³ã³ããã䜿çšãããšãããŒãžã³ã³ãã³ãã®èªã¿ããããåäžããŸããã³ã³ããããªããšãããã¹ããªã©ã®ã³ã³ãã³ãã¯ç»é¢ã®å¹ ãã£ã±ãã«æ¡å€§ãããŸããå°ããªç»é¢ã§ã¯ãããã§ååã§ããããããããã¯å€§ç»é¢ã§ã¯æ¬åœã«æªãèŠããŸãã
- ããŒãžãã¶ã€ã³èŠçŽ ãã°ã«ãŒãåãããšãèŠçŽ éã®è·é¢ãç°¡åã«èª¿æŽã§ããŸãã
- èšèšèŠçŽ ãåã«ã°ã«ãŒãåããå¿ èŠãããå Žåãã³ã³ãããŒã䜿çšããªããšããã¯é£ããå ŽåããããŸãã
CSSã䜿çšããã³ã³ãããŒèŠçŽ ã®ã«ã¹ã¿ãã€ãº
ã³ã³ãããŒã®äœ¿çšã®åºæ¬ãšãã³ã³ãããŒã䜿çšããå©ç¹ã«ã€ããŠèª¬æããã®ã§ãCSSã䜿çšããŠã³ã³ãããŒãã«ã¹ã¿ãã€ãºããæ¹æ³ã«ã€ããŠè©³ããèŠãŠãããŸãããã
theã³ã³ããã®å¹ ãèšå®ãã

ã«ã¹ã¿ã ã³ã³ããèŠçŽ ã³ã³ããã
äœæãããšããæåã«æ±ºããããšã¯ãã³ã³ããã®å¹ ã§ããããŒãžãã¶ã€ã³ãåæããããšã§ãã³ã³ãããŒã®åžæã®å¹ ã«é¢ãã質åã«çããããšãã§ããŸããäžè¬çã«ãå¹ ã
1000px
-ã®ç¯å²ã®ã³ã³ãããæããã䜿çšãããŠãããšèšã1300px
ãŸããããšãã°ã人æ°ã®ããBootstrapãã¬ãŒã ã¯ãŒã¯ã¯åãå¹
ã䜿çšã1170px
ãŸãã
.wrapper {
width: 1170px;
}
ããã§
.wrapper
ã¯ãã¯ã©ã¹Bã®èŠçŽ ã®å¹
ã®èšå®ã瀺ããŠããŸã1170px
ããå®éã«width
ã¯ãã³ã³ããã®å¹
ãèšå®ããããã®ããããã£ã¯æšå¥šãããŠããŸãããå®éã«ã¯ãããŒãžã衚瀺ããããã«äœ¿çšã§ãããã©ãŠã¶ãŒãŠã£ã³ããŠã®é åã®å¹
ãçãå Žåã¯ãããŒãžãæ°Žå¹³æ¹åã«ã¹ã¯ããŒã«ããå¿
èŠãçã1170px
ãŸãããã®åé¡ã¯ãããããã£ã䜿çšããŠè§£æ±ºã§ããŸãmax-width
ã
.wrapper {
width: 1170px;
max-width: 100%;
}
ããã¯å®å šã«æ©èœããããªãã¯ã§ãããããããã£ãå®å šã«åãé€ãããšãã§ã
width
ã次ã®äŸã®ããã«ãããããã£ã®ã¿ã䜿çšããŸãmax-width
ã
.wrapper {
max-width: 1170px;
}
ã³ã³ãããŒã®å¹ ã調æŽããããã®é©åãªã¡ã«ããºã ãèŠã€ãã£ãã®ã§ãã³ã³ãããŒãããŒãžã®äžå€®ã«é 眮ããæ¹æ³ã«ã€ããŠèª¬æããŸãã
theã³ã³ãããããŒãžã®äžå€®ã«æããŸã

ã³ã³ãããŒãããŒãžã®äžå€®
ã«æããã³ã³ãããŒãããŒãžã®äžå€®ã«æããã«ã¯ãå€åŽã®ã€ã³ãã³ããèšå®ãããšãã«
auto
ãå·Šå³ã®ã€ã³ãã³ãã®å€ã䜿çšããŸãã
.wrapper {
max-width: 1170px;
margin: 0 auto;
}
CSSä»æ§ã«åŸã£ãŠãå€ãå²ãåœãŠãããŠããã€ã³ãã³ãã®åäœã¯
auto
次ã®ãšããã§ã
ãmargin-leftãšmargin-rightãautoã«èšå®ãããŠããå Žåããããã®ã€ã³ãã³ãã«äœ¿çšãããå€ã¯åãã«ãªããŸããããã«ãããèŠçŽ ãå«ããããã¯ã®ç«¯ã«å¯ŸããŠèŠçŽ ãæ°Žå¹³æ¹åã«äžå€®æãã«ããããšãã§ããŸãã
ããŒã¯ãŒãã®äœ¿çšã®è©³çŽ°ã«èå³ãããå Žåã¯
auto
CSSã§ãèŠãŠåãããã®é±å±±ã®èšäºãã
ãã¡ãã®ãã¶ã€ã³ã䜿çšããŸãã
margin: 0 auto
ãäžäžã®ããŒãžã³ã0ã«ãªã»ããããããŒã¯ãŒãã®äœ¿çšæ¹æ³ã«å¿ããŠå·Šå³ã®ããŒãžã³ã調æŽããŸããauto
ããã®ã¹ãããã«ã¯ããã€ãã®åœ±é¿ããããŸããããã«ã€ããŠã¯ä»¥äžã§èª¬æããŸãããã®éãããŒãžã³ãèšå®ããããã«ãäžèšã®ç°¡ç¥åãããæ§é ã®å®å
šçã䜿çšããããšããå§ãããŸãã
.wrapper {
max-width: 1170px;
margin-left: auto;
margin-right: auto;
}
leftå·Šå³ã®ããã£ã³ã°ã調æŽãã

æ°Žå¹³ïŒå·Šãšå³ïŒã®ããã£ã³ã°
ã³ã³ãããèšèšãããšãã¯ãå·Šãšå³ã®ããã£ã³ã°ã®èª¿æŽã«æ³šæããããšãéèŠã§ãããã¥ãŒããŒãã®ãµã€ãºãã³ã³ãããŒã®æå€§å¹ ããå°ããå Žåãããã«ããã³ã³ãããŒã®ç«¯ããã¥ãŒããŒãã®ç«¯ã«å¯ãæ·»ããŸãã以äžã¯ãããã£ã³ã°ã䜿çšããŠã³ã³ããã«ã¹ã¿ã€ã«ãèšå®ããäŸã§ãã
.wrapper {
max-width: 1170px;
margin-left: auto;
margin-right: auto;
padding-left: 16px;
padding-right: 16px;
}
ã³ã³ãããŒã®å åŽã®äœçœã調æŽããããšã«ãã
16px
ã衚瀺é åã®å¹
ãã³ã³ãããŒã®æ倧å¹
ãããå°ããå Žåã§ããã³ã³ãããŒã®ç«¯ããå°ãªããšã衚瀺é åã®ç«¯ãã確å®ã«åºãããã«ããããšãã§ããŸããã€ã³ãã³ãã¯ããã¥ãŒããŒããã³ã³ããã®æ倧å¹
ãããçãå Žåã§ããã³ã³ããã®å¢çããã¥ãŒããŒãã®å¢çã«æŒãä»ããããã®ãé²ãäžçš®ã®ä¿è·ã¡ã«ããºã ã§ãã
containersã³ã³ãããèšå®ããéã®ããŒã»ã³ããŒãžã®äœ¿çš
ãã®è³æã®å ã®ããŒãžã§ã³ãå ¬éããåŸãã³ã³ãããèšå®ããéã®ããŒã»ã³ããŒãžã®äœ¿çšã«ã€ããŠæžããŸãããç¹ã«ãand
max-width: 90%
ããããã£ã䜿çšãã代ããã«CSSããããã£ã䜿çšããããšã«ã€ããŠè©±ããŠãããpadding-left
padding-right

ã³ã³ããã®èšå®æã«ããŒã»ã³ããŒãžã䜿çšããmax-widthïŒ90ïŒ ã®å€ã蚱容ã§ããçµæãšèš±å®¹ã§ããªãçµæãããããç¶æ³
ãã®ã¢ãããŒãã¯éåžžã«å¹æçã§ããããšãå€æããŸãããã倧ããªç»é¢ã§ã¯ãã¥ãŒããŒãã®å¹ ã®90ïŒ ã倧ããããããšãããããŸããããã ãããã®åé¡ã¯ã¡ãã£ã¢ã¯ãšãªã䜿çšããŠè§£æ±ºã§ããŸãã
.wrapper {
max-width: 90%;
margin-left: auto;
margin-right: auto;
}
/* - */
@media (min-width: 1170px) {
.wrapper {
max-width: 1170px;
}
}
ãã®çµæãããŒã»ã³ããŒãžå€ã䜿çšãããšãCSSã³ãŒããè€éã«ãªãããšãããããŸãããã¡ãã£ã¢ã¯ãšãªãé©çšããå¿ èŠããªããããã«ãå¹ ã«åºå®å€ã䜿çšã§ããŸãããã®ãã€ãŒãã§ææ¡ãããŠããå¥ã®è§£æ±ºçã¯ãããããã£
width: 90%
ãšã®çµã¿åãããé©çšããããšã§ãmax-width: 1170px
ïŒ
.wrapper {
width: 90%;
max-width: 1170px;
margin-left: auto;
margin-right: auto;
}
ããã¯èå³æ·±ãã¢ãããŒãã§ãããããŒã»ã³ããŒãžã«äŸåããã®ã§ã¯ãªããèªåã§ããã£ã³ã°ã調æŽããããšæããŸãã
theã³ã³ããèŠçŽ ã®è¡šç€ºããããã£
ã¿ã°ã¯ã³ã³ããã®ã¹ã¿ã€ã«èšå®ã«äœ¿çšããããã
<div>
ãããã©ã«ãã§ã¯ã³ã³ããã¯ãããã¯èŠçŽ ã§ããåãã°ãªããã«é
眮ããããã«ã³ã³ãããŒããããã£display
ãã«å€æŽããå¿
èŠãããå Žåã¯ã©ãgrid
ã§ããããã
æžå¿µã®åé¢ãšããèãã«åããããããããè¡ãããšã¯ãå§ãããŸãããã³ã³ããèŠçŽ ã§ãããã©ãããŒãã¯ãä»ã®èŠçŽ ããã©ãããããããšãç®çãšãããšã³ãã£ãã£ã§ããããªãã¯ã°ãªããã«ã³ã³ããã®åãé 眮ããå¿ èŠãããå Žåãããªãã¯ã³ã³ããã«å¥ã®ãã®ãè¿œå ããå¿ èŠããã
<div>
ãä»ã®èŠçŽ ãå«ãã§ãããã®ããããã£ããdisplay
ã«èšå®ããŸãgrid
... ããã¯ãã¡ã€ã³ã³ã³ãããŒã䜿çšããŠã°ãªãããèšå®ãããããç°¡åã§ã¯ãªãŒã³ã«ãªããŸããããã«ããã®ã¢ãããŒãã«ãããå°æ¥ããã®ã¢ãããŒãã䜿çšãããããžã§ã¯ãã¯ãµããŒããããããªããšèšããŸãã
次ã®ãããªã³ã³ãããçšæããŸãããïŒ
<div class="wrapper">
<!-- -->
</div>
ãã®
display: grid
ãããªèŠçŽ ã¯å¥ã®ããŒãžã§äœ¿çšã§ããããããã®ãããªèŠçŽ ã®ããããã£ãèšå®ããããšã¯ãå§ãããŸããããã®ç¹å¥ãªèšå®ã«ããã誀ã£ãŠèŠçŽ ãæ£ããé
眮ãããªãå¯èœæ§ããããŸããåé¡ã®ã³ã³ããã®äžé©åãªèšå®ãªãã·ã§ã³ã¯æ¬¡ã®ãšããã§ãã
.wrapper {
display: grid;
grid-template-columns: 2fr 1fr;
grid-gap: 16px;
}
次ã®HTMLã³ãŒãã䜿çšããããšããå§ãããŸãã
<div class="wrapper">
<div class="featured-news">
<!-- , -->
</div>
</div>
ã¯ã©ã¹
featured-news
ãæã€èŠçŽ ã¯ã次ã®ããã«ã¹ã¿ã€ã«èšå®ã§ããŸãã
.featured-news {
display: grid;
grid-template-columns: 2fr 1fr;
grid-gap: 16px;
}
ãã®äŸã§ã¯ãå¥ã®èŠçŽ
<div>
ãããŒãžã³ã³ãã³ãã®å¥ã®ã©ãããŒãšããŠäœ¿çšããŠããããšã«æ³šæããŠãã ãããããã§äœ¿çšãããŠããã¯ã©ã¹ã®ååã¯ç¡èŠã§ããŸãããã®åé¡ã解決ããã«ã¯ããµã€ãã®ããŸããŸãªããŒãžã§ç¹°ãè¿ã䜿çšããã®ã«é©ãããããæåããã¯ã©ã¹åãéžæã§ããŸãããã ããCSSãšã³ãã£ãã£ã®ååã¯ãã®èšäºã®ç¯å²å€ã§ãã
containerã³ã³ããèŠçŽ ãåºåãã€ã³ãã³ãã®èšå®
äžã«ã³ã³ãããŒèŠçŽ ãäžå€®ã«é 眮ããããã«ããŒãžã³ãèšå®ããç°¡åãªæ¹æ³ã䜿çšããããšããå§ãããªãã£ãããšãèŠããŠããŸããïŒããã¯ãã®ãããªãã¶ã€ã³ã«ã€ããŠã§ããïŒ
.wrapper {
margin: 0 auto;
}
ããã¯éåžžã«å®çšçãªã¹ã¿ã€ã«ã§ãããããŒãžã«è€æ°ã®ã©ãããŒèŠçŽ ãããããããã®éã«ããçšåºŠã®è·é¢ãå¿ èŠãªå Žåããã®ã¹ã¿ã€ã«ãé©çšãããšæ··ä¹±ããå¯èœæ§ããããŸããäœããã®çç±ã§ãè¿œå ã®ã¯ã©ã¹ãé©çšããŠã©ãããŒèŠçŽ ã®ã¹ã¿ã€ã«ã調æŽããããšã決å®ããå Žåããã®ã¯ã©ã¹ã䜿çšããŠããŒãžã³ãèšå®ãããšãCSSã«ãŒã«ã®ç¹ç°æ§å€ã®èšç®ã®ç¹æ®æ§ã®ãããæãŸããçµæãåŸãããŸããã
ç§ã¯ãã®ã¹ã¿ã€ãªã³ã°ã¹ããŒã ãæå³ããŸãïŒ
.wrapper-variation {
margin-top: 50px;
}
margin
ã¯ã©ã¹ãæã€èŠçŽ
ã®ããããã£ã¯ãããããã£.wrapper-variation
ã«ãã£ãŠãªãŒããŒã©ã€ãããããããèŠçŽ ã«ã¯é©çšãããŸããmargin: 0 auto
ãããããã£ãèšå®ããããã®çã圢åŒã¯ããã®å®å
šãªåœ¢åŒããªãŒããŒã©ã€ãããŸãããããåé¿ããããã«ããã®ãããªå Žåã¯ãå®å
šãªåœ¢åŒã®èšé²ããããã£ã䜿çšããããšããå§ãããŸããã€ãŸããã¯ã©ã¹ã§èŠçŽ ãã¹ã¿ã€ãªã³ã°ãããšãã¯ã.wrapper
次ã®ããã«ããå¿
èŠããããŸãã
.wrapper {
max-width: 1170px;
margin-left: auto;
margin-right: auto;
padding-left: 16px;
padding-right: 16px;
}
次ã«ãèŠçŽ ã®ããã£ã³ã°ã®èšå®ã«ã€ããŠèª¬æããŸããåãããžã§ã¯ãã§äœæ¥ãããšããããã£ã³ã°ãšããã£ã³ã°ãèšå®ããããã®ãã«ããŒã¯ã©ã¹ã®ã»ãããæºåããŸããå¿ èŠãªå Žæã§äœ¿çšããŸãã次ã®å³ãèŠãŠãã ããã

ã¹ã¿ã³ãã¢ãã³ã³ã³ãããšèŠçŽ å ã®ã³ã³ãã
<section>
ãããHTMLã§ãã
<div class="wrapper mb-5"></div>
<section>
<div class="wrapper"></div>
</section>
<div class="wrapper"></div>
ããã«ã¹ã¿ã€ã«ããããŸãïŒ
.mb-5 {
margin-bottom: 3rem !important;
}
ãã®ã¢ãããŒãã§ã¯ãã©ãããŒèŠçŽ ã®CSSã³ãŒãã¯å€æŽããããèŠçŽ éã®ééã¯CSSãã«ããŒã¯ã©ã¹ã䜿çšããŠèª¿æŽãããŸããããã§ãããŒãžã§è€æ°ã®ã³ã³ãããŒã䜿çšããå¿ èŠãããçç±ã«ã€ããŠè³ªåããããããããŸãããäžèšã®HTMLã³ãŒãã§ã¯
<section>
ã2ã€ã®ã©ãããŒèŠçŽ ã®éã«èŠçŽ ãããããšã«æ³šæããŠãã ããã
ããã¯ã修食åã®äœ¿çšãããŸãæ©èœããå Žæ
!important
ã§ããéèŠãªç¹ã¯ããã«ããŒã¯ã©ã¹ã䜿çšãããã€ã³ãã¯ãããããã£å€ã匷å¶çã«å€æŽããããšã§ãããã®åäœã¯ã§æäŸã§ããŸã!important
ã
å šç»é¢èŠçŽ å ã®ã³ã³ãã
å Žåã«ãã£ãŠ
<section>
ã¯ããã¥ãŒããŒãã®å¹
ã®100ïŒ
ãå ããèæ¯ãæã€èŠçŽ ãããããã®èŠçŽ ã®å
éšã«ã¯ã³ã³ããèŠçŽ ããããŸãããã®åè·¯ã¯ãåã®ã»ã¯ã·ã§ã³ã§èª¬æãããã®ãšäŒŒãŠããŸãã
ãã®ãããªç¶æ³ã§ã®ããŒãžã®HTMLæ§é ã¯æ¬¡ã®ããã«ãªããŸãã
<section>
<div class="wrapper"></div>
</section>
<section>
<div class="wrapper"></div>
</section>
èŠçŽ
<section>
ã¯ãã¥ãŒããŒãã®å¹
ã®100ïŒ
ãå ããŸãããã®èŠçŽ ã«èæ¯ç»åãŸãã¯èæ¯è²ãå²ãåœãŠãããšãã§ããŸãããã®èŠçŽ å
ã®ã³ã³ããã¯ãã³ã³ãã³ãããã¥ãŒããŒãã®å¹
å
šäœãå ããããšãé²ããŸãã

èŠçŽ
<section>
ã¯ãã¥ãŒããŒãã®å¹
å
šäœã«åºãããã³ã³ããã¯ããŒãžã³ã³ãã³ãã衚瀺ãããã¹ããŒã¹ãå¶éããŸãã
ãã®å³ã§ã¯ãèŠçŽ ã«
<section>
èæ¯ç»åããããŸãããã¥ãŒããŒãã®å¹
å
šäœãå ããã³ã³ããã«è¡šç€ºãããããŒãžã³ã³ãã³ãã¯ãã³ã³ããã®å¹
ã«ãã£ãŠå¶éãããŸãã
ããŒãžã®äžéšãããã¯ã®ã³ã³ãã³ããã³ã³ããã§å²ãå¿ èŠããããŸããïŒ
ãããããŒããŒã»ã¯ã·ã§ã³ããšåŒã°ããããŒãžã®äžéšãããã¯ããã¶ã€ã³ããããã®ã³ã³ãããŒãå¿ èŠã§ããïŒããã¯ããããã®ç¹å®ã®ç¶æ³ã«äŸåããŸããããŒãžã®äžéšãããã¯ã®ãã¶ã€ã³ã«å¯Ÿããæãäžè¬çãª2ã€ã®ã¢ãããŒãã調ã¹ãŸãã
æåã®ã¢ãããŒãã§ã¯ããããã¯ã³ã³ãã³ããäžå€®ã«é 眮ããã³ã³ãã³ãã®å¹ ãå¶éããŸãã

ããŒãžã®ããããããã¯ã®ã³ã³ãã³ãã®å¹ ã¯å¶éãããŠããŸã
ã2çªç®ã®ãªãã·ã§ã³ã¯ãããããããã¯å ã®ã³ã³ãã³ãã®é ä¿¡ãæäŸããŸãã

ã³ã³ãã³ãã¯ããŒãžã®äžéšãããã¯å ã«é ä¿¡ãããŸãã
ãããã®ãã¿ãŒã³ãããããç解ããããã«ããããã®å éšæ§é ã®æ©èœã調ã¹ãããšããå§ãããŸãã
ã³ã³ãã³ããäžå€®ã«é 眮ãããŠããããŒãžã®äžéšãããã¯
ãããããããŒãžã®äžéšã®ãããã¯ãéçºããŠã察å¿ããèŠçŽ ã«
<section>
ã³ã³ãã³ããé
眮ããã³ã³ãããŒèŠçŽ ã䜿çšããã«ã³ã³ãã³ããäžå€®ã«é
眮ããå¿
èŠããããŸãã
<section class="hero">
<h2><font color="#3AC1EF">How to make bread at home</font></h2>
<p>....</p>
<p><a href="/sign-up">Sign up</a></p>
</section>
äžèšã®HTMLã³ãŒãã«ã¹ã¿ã€ã«ãèšå®ããå Žåãããããã£ã䜿çšããŠã³ã³ãã³ããäžå€®æãã«ããããšãã§ããŸã
text-align
ã
.hero { text-align: center; }
ãã®ã¢ãããŒãã§ã¯ããã©ãŠã¶ãŒãŠã£ã³ããŠã®å¹ ãå€ãããŸã§ããã¹ãŠãé©åã«èŠããŸãããããåŒãèµ·ããå¯èœæ§ã®ããåé¡ã«ã€ããŠã®è°è«ã§ãã
âåé¡çªå·1ïŒã»ã¯ã·ã§ã³ã®ã³ã³ãã³ãã衚瀺é åã®ç«¯ã«æŒãä»ããããŠãã
ãã®äŸã§ã¯å·Šå³ã®ããã£ã³ã°ãèšå®ããªããããã»ã¯ã·ã§ã³ã®ã³ã³ãã³ãã¯ãã®ã»ã¯ã·ã§ã³ã®å¢çç·ã®è¿ãã«é 眮ãããŸããããã«ããããŠãŒã¶ãŒãããŒãžã®äžéšãããã¯ã®ã³ã³ãã³ããèªã¿åãããšãå°é£ã«ãªãããããŠãŒã¶ãŒã«äžäŸ¿ãçããŸãã

ã»ã¯ã·ã§ã³ã®å 容ã端ã«æŒãä»ããããŸãã
âåé¡ïŒ2ïŒå€§ç»é¢ã§ããã¹ãè¡ãé·ããã
倧ããªç»é¢ã§
<p>
ã¯ã段èœã®é·ããé·ããããããã¿ã°ä»ããããããã¹ãã¯èªã¿ã«ããå ŽåããããŸãããã®ããã¥ã¡ã³ãã«ãããšã1è¡ãããã®æšå¥šæåæ°ã¯45ã75ã§ãããã®ç¯å²ãè¶
ããæååã®é·ããè¶
ãããšãèªã¿ã«ãããªããŸãã

è¡ã®é·ããé·ãããŸã
problemsåé¡ã解決ãã
äžèšã®åé¡ã解決ããã«ã¯ãã³ã³ãããŒã䜿çšã§ããŸããããã«ãããè¡ã®é·ããé©åãªå¶éå ã«ä¿ã¡ãã³ã³ãã³ããã»ã¯ã·ã§ã³ã®å¢çã«å¯ãæ·»ãã®ãé²ãããšãã§ããŸãã
<section class="hero">
<div class="hero__wrapper">
<h2><font color="#3AC1EF">How to make bread at home</font></h2>
<p>...</p>
<p><a href="/sign-up">Sign up</a></p>
</div>
</section>
ããã§ã¯ãã³ã³ãããèšå®ãããšãã«ã¯ã©ã¹åã䜿çšããŠããŸãã
hero__wrapper
ãã®ã³ã³ããã¯ããããäžæã§ãããããŒãžã®äžéšãããã¯ã®ãã¶ã€ã³ã«ã®ã¿äœ¿çšãããããã§ãããããã£ãŠãç¹ã«ãã³ã³ããã®å¹
ã¯ãéåžžã®ç¶æ
ã§äœ¿çšãããã³ã³ããã®å¹
ãããå°ããããããšãã§ããã
.hero__wrapper {
max-width: 720px;
margin-left: auto;
margin-right: auto;
padding-left: 16px;
padding-right: 16px;
}
ããŒãžã®äžéšãããã¯ã®ã³ã³ãã³ããäžå€®ã«é 眮ããããã®äŸ¿å©ãªæ¹æ³ã䜿çšã§ããŸããããã¯ãã¹ãŠç¹å®ã®ç¶æ³ã«äŸåããŸãããã®äŸã§ã¯ãã³ã³ãã³ããé 眮ããã«ã¯ãããããã£ã䜿çšããã ãã§åå
text-align: center
ã§ãã
ã³ã³ãããæããæ¹æ³ïŒããŒãžã®äžå€®ãŸãã¯å·Šç«¯ïŒ
ç§ã¯ãã®è³ªåã«æ確ãªçããäžããããšã¯ã§ããŸãããã䜿çšãããŠããã³ã³ãããŒãã©ãããããç»é¢ã®äžå€®ã«é 眮ããããã¹ã¯ãããç»é¢ã®å·Šæãã«ãªã£ãŠãããµã€ããèŠãŸããã
ãã®ãããªãµã€ãã®äŸã¯Techcrunchã§ãããã¹ã¯ãããã³ã³ãã¥ãŒã¿ãŒã®ç»é¢ã§ã¯ããµã€ãã³ã³ãã³ãã¯ããŒãžã®å·ŠåŽã«é 眮ãããŠããŸãã

ã©ãããããç»é¢ãšãã¹ã¯ãããã³ã³ãã¥ãŒã¿ãŒã§ã³ã³ãã³ããæãã
ç§ã¯ãã³ã³ãã³ããäžå€®ã«æããŠãããµã€ãã§äœæ¥ããããšæã£ãŠããŸãããã®ãããªãµã€ãã®ããŒãžã¯å·Šå³å¯Ÿç§°ã®ã€ã³ãã³ããæã£ãŠããŸããããããäžéšã®ãµã€ãã®ã³ã³ãã³ããããŒãžã®å·ŠåŽã«é 眮ãããŠãããšããäºå®ã¯ãç§ãæ°ä»ããŠããªãããã€ãã®çç±ããããããããŸããããããäºå®ã§ããçç±ãç¥ã£ãŠãããªããç§ã«ç¥ãããŠãã ããã
CSSå€æ°ã䜿çšããŠã³ã³ãããŒã®ããŸããŸãªã¹ã¿ã€ã«ãªãã·ã§ã³ãäœæãã
ãããžã§ã¯ãã§äœ¿çšããããã¹ãŠã®ã³ã³ããèŠçŽ ã®å¹ ãåãã«ãªãããšã¯ã»ãšãã©ãããŸãããã³ã³ãããŒã®å¹ ã¯ãã³ã³ãããŒã®å 容ãšäœ¿çšæ¹æ³ã«ãã£ãŠç°ãªããŸããCSSå€æ°ã䜿çšããããšã§ãã³ã³ãããŒã®æäœã«å€§ããªæè»æ§ãããããããŸããããã¯ãã³ã³ãããŒãæ§æããããã®éåžžã«ææ°ã®ã¢ãããŒãã§ããããŸããäŸãèŠãŠã¿ãŸãããã
ãããã³ã³ããHTMLã§ãã
<div class="wrapper"></div>
ããã«ã¹ã¿ã€ã«ããããŸãïŒ
.wrapper {
max-width: var(--wrapper-width, 1170px);
margin-left: auto;
margin-right: auto;
padding-left: 16px;
padding-right: 16px;
}
CSSã泚ææ·±ãèªããšã
var()
2ã€ã®å€ãæž¡ãããŠããããšã«æ°ä»ãããããããŸãããæåã®å€ã¯å€æ°--wrapper-width
ã§ã2çªç®ã®å€ã¯éåžžã®å€1170px
ã§ãã2çªç®ã®å€ã¯äºçŽãããŠããŸãããã®ååšã®æå³ã¯ãå€æ°ã®å€--wrapper-width
ãæªå®çŸ©ã®å Žåã«äœ¿çšãããããšã§ãã
ã©ãããæå³ã§ããïŒããã¯ãå€æ°ã®å€ãåå®çŸ©ããå¯èœæ§ããããããã©ãããŒèŠçŽ ã®ããŸããŸãªããªã¢ã³ããäœæããããã®ããŒã«ãæã«ããŠããããšãæå³ããŸã
--wrapper-width
ã次ã®ããã«ãªããŸãã
<div class="wrapper" style="--wrapper-width: 720px"></div>
ãã®ã¢ãããŒãã«ããã次ã®ããšãè¡ããã«ã«ã¹ã¿ã ã³ã³ãããŒãäœæã§ããŸããã
- èŠçŽ ã«æ°ããã¯ã©ã¹ãè¿œå ããŸãã
- æ¢åã®ã¹ã¿ã€ã«ã®ã³ããŒãšè€è£œã
ãã®ãããªèŠçŽ ã¯ãå°æ¥çã«ç¶æãããããªããŸããããã«ããã©ãŠã¶éçºè ããŒã«ã§ã®ã«ã¹ã¿ãã€ãºã容æã«ãªããŸããã€ã³ã©ã€ã³ã¹ã¿ã€ã«ã
䜿çšããŠCSSå€æ°ã®å€ããªãŒããŒã©ã€ãããããããã®ã¢ãããŒããæ°ã«å ¥ããªãå Žåã¯ãèŠçŽ ã«æ°ããã¯ã©ã¹ãè¿œå ããããšã§ããã®åé¡ãç°¡åã«è§£æ±ºã§ããŸããäŸãã°-以äžã«ç€ºãããã«ã HTMLããŒã¯ã¢ããã¯æ¬¡ã®ãšããã§ãã
<div class="wrapper wrapper--small"></div>
ããã¯ã¹ã¿ã€ã«ãã©ã®ããã«èŠãããã§ãïŒ
.wrapper--small {
--wrapper-width: 720px;
/* . */
}
å®éã®äŸã¯ããã«ãããŸãã
ãã£ã¹ãã¬ã€ã®äœ¿çšïŒå 容
ãŸãã
contents
ããããã£å€ã«ã€ããŠå°ãã話ãããŸãããdisplay
ãCSSã®ãã¹ãŠã®èŠçŽ ã¯ãããã¯ã§ãããã®ãããã¯ã«ã¯äœããå«ãŸããŠãããå
åŽãšå€åŽã®ããŒãžã³ãšå¢çç·ããããŸããããããã£ã䜿çšãããšããã®ããããã£display: contents
ãå²ãåœãŠãããŠãããããã¯ãããã¥ã¡ã³ããããŒããåé€ãããŸããããã¯ããããã¯ã®éå§ã¿ã°ãšçµäºã¿ã°ãåé€ããããšãšèããŠãã ããã
ããã«ããŒã¯ã¢ããããããŸãïŒ
<header class="site-header">
<div class="wrapper site-header__wrapper">
<!-- -->
</div>
</header>
ããã«ã¹ã¿ã€ã«ããããŸãïŒ
.site-header__wrapper {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}

ã©ãããŒèŠçŽ
ãã®äŸã®ãããªãã®ãå®è£ ãããšãã¯ããµã€ãããããŒãããŒãžã®å šå¹ ã«æ¡å€§ããŠããã®å¹ ãã³ã³ãããŒã®ããããã£ã«ãã£ãŠå¶çŽãããªãããã«ããããšãã§ããŸãã
.site-header__wrapper {
display: contents;
}
.site-header {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
ããã§ã¯ãããããã£ã䜿çšããŠãããã
display: contents
ãã©ãããŒèŠçŽ ã¯ãé衚瀺ãã«ãªããŸããããããã£display: flex
ãã¯ã©ã¹ãæã€èŠçŽ ã«é©çšããããš.site-header
ãã³ã³ããã®åãã«ãªã.site-header
ãŸãã

ãµã€ãã®ããããŒéšåã¯ãå©çšå¯èœãªã¹ããŒã¹å šäœãå ããŠããŸã
ã¬ã¹ãã³ã·ããªèæ¯ãšãã£ãã¯ã¹ã³ã³ãã³ã
CSSã·ãŒã¯ã¬ããããã¯ã§ã¯ãã¬ã¹ãã³ã·ããªèæ¯ïŒãã¥ãŒããŒãã®å©çšå¯èœãªå¹ å šäœãå ããããšãã§ããèæ¯ïŒãšã³ã³ãã³ãã®ã³ã³ãããŒèŠçŽ ãæã€ã»ã¯ã·ã§ã³ã®ã¹ã¿ã€ã«ãèšå®ããããã«äœ¿çšã§ããèå³æ·±ããã¯ããã¯ã玹ä»ããŠããŸãããã®ãããªã»ã¯ã·ã§ã³ã®ã¬ã€ã¢ãŠããäœæããéåžžã®æ¹æ³ãèŠãŠã¿ãŸãããã
HTMLããŒã¯ã¢ããã¯æ¬¡ã®ãšããã§ãã
<section>
<div class="wrapper"></div>
</section>
ããã«ã¹ã¿ã€ã«ããããŸãïŒ
section {
background-color: #ccc;
}
.wrapper {
max-width: 1170px;
margin-left: auto;
margin-right: auto;
padding-left: 16px;
padding-right: 16px;
}
ããã§ã¯ã
margin-left: auto
ããã³ã®å€ã¯margin-right: auto
ããã¥ãŒããŒãã®å¹
ã®ååãåããã³ã³ãã³ãããã³ã³ãã³ãã®å¹
ãå·®ãåŒãããšã«ãã£ãŠèšç®ãããŸããåãããšã¯ãããã£ã³ã°ã䜿çšããŠå®çŸã§ããŸãã

å éšããã£ã³ã°
section {
padding: 1rem calc(50% - 585px);
}
ããããååŒã¯ãŸã è¡ãããŠããŸãããã¢ãã€ã«ããã€ã¹ã§ã¯ãã³ã³ãã³ãã¯è¡šç€ºé åã®ç«¯ã«ããã·ã¥ãããŸãããã®åé¡ã¯ãããšãã°æ¬¡ã®ããã«ããŠè§£æ±ºã§ããŸãã
section {
padding: 1rem;
}
@media (min-width: 1170px) {
section {
padding: 1rem calc(50% - 585px);
}
}
代æ¿ãœãªã¥ãŒã·ã§ã³ã¯ãæ°ããCSSé¢æ°ã䜿çšããããš
max()
ã§ããããã䜿çšããŠãå
éšããã£ã³ã°ã®æå°ãµã€ãºãã«èšå®ãã1rem
ããã«æž¡ããã2çªç®ã®å€ãšããŠãåŒãæå®ããŸã50% â 585px
ã
section {
padding: 1rem max(1rem, (50% - 585px));
}
ããªãã¯ãCSSã®æ©èœã®è©³çŽ°ã«èå³ãããå Žå
min()
ãmax()
ããã³clamp()
- ããã§ãã®ãããã¯ã«é¢ããç§ã®ææãã
ã³ã³ããèŠçŽ ãã©ã®ããã«ã¹ã¿ã€ã«ããŸããïŒ
