February 20, 2021
items ๋ cell ์ค์ ํ๋์ด๋ฉฐ, ๊ฐ ๊ฐ ๊ฐ๋ณ์ ์ผ๋ก ํ๋ ํ๋๋ฅผ ์๋ฏธํ๋.
ํ์ง๋ง content ๋ ์ ์ฒด ๊ทธ๋ฆฌ๋ ์ด๋ค.
์ ์ฒด Grid ์ ์ปจํ ์ธ ๋ฅผ ์ ๋ ฌํ๋ฌ ๋ ๋๋ณด์.
.grid {
display: grid;
background: black;
gap: 10px;
height: 250vh;
grid-template-columns: repeat(4, 100px);
grid-template-rows: repeat(4, 100px);
/* ์ฌ๊ธฐ ์๋์ ์์ฑ ์์ */
}
.header {
background: #2ecc71;
}
.content {
background: #3498db;
}
.nav {
background: #8e44ad;
}
.footer {
background: #f39c12;
}
์ ์ฒด ๊ทธ๋ฆฌ๋๋ฅผ ์ํ ์ ๋ ฌํ๋ justify-content, start ๊ฐ ๊ธฐ๋ณธ๊ฐ์ด๋ฉฐ ์ ์ฒด ๊ทธ๋ฆฌ๋๋ฅผ ์์ง์ด๊ฒ ํ๋ค.
center, end, start, space-between ๋ฑ์ ์์ฑ๋ ๋ฃ์ด ๋ณด์๋ค.
justify-content: start;
๊ทธ๋ฆฌ๋์ ๋์ด๊ฐ ์ถฉ๋ถํ์ง ์์ผ๋ฉด ์์ง ์ ๋ ฌ์ ํด๋ ๊ฒฐ๊ณผ๊ฐ ๋ํ๋์ง ์๋๋ค.
๋์ด๋ฅผ 250vh ์ ๋๋ก ์์ ํ๋ค.
๊ทผ๋ฐ flex ๋ฐฐ์ธ ๋ align-items ์๋์๋, ์๋ align-content ๋ผ๊ณ ์ฐ๋๊ตฌ๋?
์ ์ฒด ๊ทธ๋ฆฌ๋๋ฅผ ์์ง ์ ๋ ฌํ๋ align-content ๋ start, end, center, space- ์จ๋จน์ด ๋ณด์.
<div class="grid">
<div class="header"></div>
<div class="content"></div>
<div class="nav"></div>
<div class="footer"></div>
<div class="header">header</div>
<div class="content">content</div>
<div class="nav">nav</div>
<div class="footer">footer</div>
<div class="header">header</div>
<div class="content">content</div>
<div class="nav">nav</div>
<div class="footer">footer</div>
<div class="header">header</div>
<div class="content">content</div>
<div class="nav">nav</div>
<div class="footer">footer</div>
</div>
justify-content: start;
align-content: space-between;
align-content ๋ฅผ stretch ๋ก ๋ฐ๊พธ๊ณ grid-template-rows ์ 100px ์ 1fr ๋ก ๋ฐ๊ฟ๋ณด์, ๋์ด๋๋ค.
grid-template-columns: repeat(4, 100px);
grid-template-rows: repeat(4, 1fr);
align-content: stretch;
place-content: ์์ง์ ๋ ฌ, ์ํ์ ๋ ฌ ์ ํํ๋ก ์์ฑํ๋ค.
place-content: end center;
place-items ์ place-content ๋ ์ฌ์ฉํ๋ ์ฑ๊ฒฉ์ด ๋ค๋ฅด๋ค๋ ์ ์ ์ผ๋ํด์ผ ํ๋ค.
์๋ ์ฝ๋ ์ฐธ์กฐ
.header {
background: #2ecc71;
align-self: end;
/* align ๊ทธ ์์ฒด์๋ง ์ ์ฉ๋๋ค. */
justify-self: center;
/* align-self, justify-self ์ Shortcut ๋ ์๋ค. */
place-self: start end;
}
.content {
background: #3498db;
}
.nav {
background: #8e44ad;
}
.footer {
background: #f39c12;
}