๋ฐ์ํ
1๏ธโฃ Grid ๋?
- display:grid ๋ฅผ ์ ์ธํ๋ฉด ์์์๊ฒ ์ ์ฉ.
- ๋ถ๋ชจ์์๋ grid-container ์์์์๋ grid-item
- ์นํ์ด์ง๋ฅผ ์ํ 2์ฐจ์ ๋ ์ด์์(x์ถ, y์ถ) ์์คํ .
- Gap ์ ํตํด ์ ๊ณผ ์ ์ฌ์ด์ ๊ฐ๊ฒฉ์ ์ค์ .
2๏ธโฃ grid-container
- ↔๏ธ grid-template-columns ์ด๋ฐฉํฅ ๊ทธ๋ฆฌ๋ ํธ๋์ ์ฌ์ด์ฆ๋ฅผ ์ค์ .
- โ๏ธ grid-template-rows ํ๋ฐฉํฅ ๊ทธ๋ฆฌ๋ ํธ๋์ ์ฌ์ด์ฆ๋ฅผ ์ค์ .
.container{
display:grid;
grid-template-columns: 100px 100px 100px;
grid-template-rows: 200px 100px;
}
.container{
display:grid;
grid-template-columns: 1fr 1fr 1fr;
grid-template-rows: 2fr 1fr;
}
/* fr์ด๋? */
/* fraction = ๋ถ์ : ๋น์จ๋ก ์ปจํ
์ด๋ ๋ถํ (ex 1fr 1fr = 1:1) */
3๏ธโฃ Grid Function
- repeat(๋ฐ๋ณต ํ์ , ๋ฐ๋ณตํ ๊ฐ)
/* grid-template-columns: 1fr 2fr 1fr 2fr; */
grid-template-columns: repeat(2, 1fr 2fr);
- minmax(์ต์ํญ , ์ต๋ํญ or auto)
- auto-fill auto-fit ์ ํ์ฉํด์ ๋ฐ์ํ ์น์ ์ฌ์ฉํ์! ๋ ์ฝ๋์ ์ฐจ์ด๋ ์๋ ์์ ์ด๋ฏธ์ง ์ฐธ๊ณ .
/* auto-fill = ๊ฐ๋ฅํ ๋ง์ ์
๋ค์ ์ ๋ ฌ. ๋จ์ผ๋ฉด ๋น๊ณต๊ฐ ์์ฑ */
grid-template-columns: repeat(auto-fill, minmax(80px, auto));
/* auto-fit = ๊ณต๊ฐ์ด ๋จ์ ๊ฒฝ์ฐ, ๊ทธ ๊ณต๊ฐ์ ๊ฐ ์
๋ค์ด ๋๋ ๊ฐ์ต๋๋ค. */
grid-template-columns: repeat(auto-fit, minmax(80px, auto));
4๏ธโฃ Grid-item
- grid-column-start grid-column-end grid-row-start grid-row-end
/* ์ขํ ์
๋ ฅ */
grid-row-start: 1;
grid-row-end: 2;
grid-column-start: 1;
grid-column-end: 4;
/* ์ขํ ์
๋ ฅ ์ค์ฌ์ ์์ฑ */
grid-row: 1/2;
grid-column: 1/4;
/* grid-area๋ฅผ ํตํด ๋จ์ถ ํ๊ธฐ */
/* row-start / column-start(span ๋ณํฉ ์) / row-end / column-end (span ๋ณํฉ ์) */
grid-area: 1 / 1 / span 2 / span 2;
5๏ธโฃ grid-template-areas
- ํ ํ๋ฆฟ์ ์ง์ ์ ์ธํด์ grid ์ขํ์ ์ซ์๊ฐ ์๋ ๋ฌธ์์ด๋ก ๋ฐฐ์นํ๋ ๋ฐฉ๋ฒ.
.template-Grid {
grid-template-rows: 2fr 1fr;
grid-template-rows: 1fr 2fr 1fr;
grid-template-areas:
"header header header"
"section section aside"
"footer footer footer";
}
๐ฉ๐ป๐ป ์์ฝ!
- ๋ถ๋ชจ์์๋ grid-container ์์์์๋ grid-item ํ๋ ฌ์ ์ค๊ฐ๋ฉฐ css ๋ ์ด์์์ ๋ง๋ค ์ ์๋ค.
- ↔๏ธ grid-template-columns ์ด๋ฐฉํฅ ๊ทธ๋ฆฌ๋ ํธ๋์ ์ฌ์ด์ฆ๋ฅผ ์ค์ .
- โ๏ธ grid-template-rows ํ๋ฐฉํฅ ๊ทธ๋ฆฌ๋ ํธ๋์ ์ฌ์ด์ฆ๋ฅผ ์ค์ .
- grid-item์ ์ขํ๋ฅผ ์ฐ์ด์ ์์น ์ ๋ ฅ grid-column-start grid-column-end grid-row-start grid-row-end
- repeat() ๋ฐ๋ณต ํจ์, min() max() ๋น์จ ์กฐ์ ํจ์๋ฅผ ์ด์ฉํ๋ฉด ๋ฐ์ํ ์ ์ํ ๋ Good!
- ๊ณผ๊ฑฐ์ ๋... ์ grid๊ฐ ์ด๋ ต๋ค๊ณ ์๊ฐํ์๊น? ์ ๋ง ํธํ๊ณ ๊ฐ๋จํ๋ค.
Grid์ ๋ํ ์์ ๊ฐ ๊ถ๊ธํ๋ค๋ฉด ๐ git_pages ์์ ํ์ธ ๊ฐ๋ฅ ๐
๋ฐ์ํ