flex ๋ ํ๋ฐฉํฅ ๋ ์ด์์ (ํ๋ฐฉํฅ) ์ต์ค ์ผ๋ถ ๋จน์
grid ๋๋ฐฉํฅ ๋ ์ด์์ (๊ฐ๋ก ์ธ๋ก ๋๋ค๊ฐ๋ฅ) ์ข๋ ๋ณต์กํ ํ๋ ฌ๊ตฌ์กฐ (ํ) ๊ตฌํ ๊ฐ๋ฅ
์ต์ค์์ ์์ ์๋จน์
*๋ณํฉ๊ตฌ์กฐ์์ ์ฌ์ฉํ๊ธฐ ํธํ๋ค
grid-template-rows
grid-template-columns (์นธ์๊ฐ์)
.container {
grid-template-columns: 200px 200px 500px;
/* grid-template-columns: 1fr 1fr 1fr */
/* grid-template-columns: repeat(3, 1fr) */
/* grid-template-columns: 200px 1fr */
/* grid-template-columns: 100px 200px auto */
grid-template-rows: 200px 200px 500px;
/* grid-template-rows: 1fr 1fr 1fr */
/* grid-template-rows: repeat(3, 1fr) */
/* grid-template-rows: 200px 1fr */
/* grid-template-rows: 100px 200px auto */
}
1fr
์ ์ฉ ๋น์จ๋จ์ ์ฌ์ฉ
columns ์นธ์ ๊ฐฏ์
row ํ
% calc ์์จ๋๋จ
gap
.container {
gap: 10px 20px;
/* row-gap: 10px; column-gap: 20px; */
}
ํ๊ฐ์ ๊ฐ๊ฒฉ (์ฌ์ด์๋ง ๊ฐ๊ฒฉ์ด๋ค์ด๊ฐ)
.container {
grid-auto-rows: minmax(100px, auto);
}
๊ฐ๋ณ์ผ๋ auto ์ฌ์ฉ ํ์ด์ ์ ์ฒดํฌ๊ธฐ๋ฅผ ํ๋ฒ์ ์ก์์ ์์
๋ณํฉ
1-3์นธ์ ํฉ์ณ๋ผ
์ธ๋ก ์ ๋ ฌ
.container {
align-items: stretch;
/* align-items: start; */
/* align-items: center; */
/* align-items: end; */
}
๊ฐ๋ก์ ๋ ฌ
.container {
justify-items: stretch;
/* justify-items: start; */
/* justify-items: center; */
/* justify-items: end; */
}
itmes ๋ ๊ฐ๋ณ์ ๋ ฌ
content ๋ ์ ์ฒด์ ๋ ฌ
z-index ๊ฐ๋ฅ
display: grid;
- IE11์์ ์ฌ์ฉ๋ถ๊ฐํ๋ฏ๋ก ๋ชจ๋ฐ์ผํ์ ๋ง ์ฌ์ฉ๊ฐ๋ฅ
- ํ๋ก ํธ๊ฐ๋ฐํ๊ฒฝ(React, Vue)์์ ์ฌ์ฉ๊ฐ๋ฅ
- ์ปจํ
์ธ ๊ฐ ํ, ์ด ๊ตฌ์กฐ์ด๋ฉฐ ์ผ๋ถ์ปจํ
์ธ ์ ํฌ๊ธฐ๊ฐ ๋ค๋ฅผ๊ฒฝ์ฐ(๋ณต์ก)
๋ถ๋ชจ์ปจํ
์ด๋ {
display:grid;
/* ์ฌ๋ฌ์ค์ด๋๋ผ๋ ํ์ค์ธ 1fr๋ก ์ฒ๋ฆฌ๊ฐ๋ฅ */
grid-template-rows: 1fr 1fr 1fr;
/* 3์นธ์ผ๋ก ์ง์ ํ๊ณ ํฌ๊ธฐ๋ ๋์ผ, fr์ fraction(๋น์จ) */
grid-template-columns: 1fr 1fr 1fr;
/* ์ฒซ๋ฒ์งธ์นธ: 3/5, ๋๋ฒ์งธ์นธ: 2/5 */
grid-template-columns: 3fr 2fr;
/* 3์นธ์ผ๋กํ๊ณ ๊ฐ๋ก๊ธธ์ด ๋์ผํ๊ฒ */
grid-template-columns: repeat(3, 1fr);
/* ์ค๊ฐ๊ฒฉ, ์นธ๊ฐ๊ฒฉ, ๊ฐ ์ค๊ณผ ์นธ์ฌ์ด๋ง ์ ์ฉ๋จ */
gap: 10px 20px;
/* ์ธ๋ก์ ๋ ฌ */
align-items: center;
/* ๊ฐ๋ก์ ๋ ฌ */
justify-content: center;
}
๊ทธ๋ฆฌ๋์์ดํ
{
/* ํฉ์น๊ณ ์ถ์ ์์๋ฒํธ์ ๋๋ฒํธ๋ฅผ ์ ์ */
grid-row: 1 / 3;
grid-column: 1 / 3;
/* 1๋ฒ๋ถํฐ ์์ํ์ฌ ๋์นธ ํฉ์น๊ธฐ */
grid-column: 1 / span 2;
/* 1๋ฒ๋ถํฐ ์์ํ์ฌ ๋์นธ ํฉ์นจ, ์์๋ฒํธ ์๋ต์ 1๋ถํฐ ์์ */
grid-column: span 2;
/* z-index, order ์ฌ์ฉ๊ฐ๋ฅ */
/* ํ์์, ์ด์์, ํ๋, ์ด๋๋ฒํธ */
grid-area:1 / 2 / 4 / 6;
}
์ฐธ๊ณ ๋งํฌ
https://studiomeal.com/archives/533
์ด๋ฒ์์ผ๋ง๋ก CSS Grid๋ฅผ ์ตํ๋ณด์
์ด ํฌ์คํธ์๋ ์ค์ ์ฝ๋๊ฐ ์ ์ฉ๋ ๋ถ๋ถ๋ค์ด ์์ผ๋ฏ๋ก, ํด๋น ๊ธฐ๋ฅ์ ์ ์ง์ํ๋ ์ต์ ์น ๋ธ๋ผ์ฐ์ ๋ก ๋ณด์๋๊ฒ ์ข์ต๋๋ค. (๋์ถฉ ์ธํฐ๋ท ์ต์คํ๋ก๋ฌ๋ก๋ง ์๋ณด๋ฉด ๋๋ค๋ ์ด์ผ๊ธฐ) ์ด ํํ ๋ฆฌ์ผ์ “
studiomeal.com
'CSS๐ง > ๋ฐ์ํ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
๋ชจ๋ฐ์ผ ์ ํ๋ธ ๋น์จ์กฐ์ (0) | 2022.11.16 |
---|---|
์์ดํฐ ์ ํ๋ฒํธ/์ซ์ css ๋งํฌ ์ ๋ณ๊ฒฝ (0) | 2022.11.16 |
๋ชจ๋ฐ์ผ ํฌ์ธํธ์ปฌ๋ฌ ์ฃผ๋ ๋ฐฉ๋ฒ (0) | 2022.11.11 |
๋ชจ๋ฐ์ผ html,css์ด๊ธฐ์ ํ (0) | 2022.11.07 |
๋ชจ๋ฐ์ผ max-width: 100% (0) | 2022.11.07 |
๋๊ธ