[CSS] grid ์ •๋ฆฌ

dygreenยท2022๋…„ 5์›” 24์ผ
1

CSS

๋ชฉ๋ก ๋ณด๊ธฐ
11/11
post-thumbnail
post-custom-banner

๐Ÿ—’ ๋ฐ˜์‘ํ˜• ์›น์‚ฌ์ดํŠธ ์ œ์ž‘์— ์œ ์šฉํ•œ flex์™€ grid ์ค‘ grid์— ๋Œ€ํ•ด ๊ฐ„๋‹จํ•˜๊ฒŒ ์ •๋ฆฌํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค!

๐Ÿ“Œ grid๋ž€ ?

: flexible box๋Š” ์•„์ดํ…œ์„ ๋ฐฐ์น˜ํ•  ๋•Œ ๊ฐ€๋กœ/์„ธ๋กœ ๋‘˜ ์ค‘ ํ•˜๋‚˜๋ฅผ ์ฃผ์ถ•์œผ๋กœ ์ •ํ•ด๋†“๊ณ  ๋ฐฐ์น˜ํ•˜์ง€๋งŒ, grid๋Š” ๊ฐ€๋กœ์™€ ์„ธ๋กœ๋ฅผ ๋ชจ๋‘ ์‚ฌ์šฉํ•œ๋‹ค. (flex: 1์ฐจ์›, gird: 2์ฐจ์›)

display: grid; /*์ปจํ…Œ์ด๋„ˆ์˜ width๋Š” 100%๊ฐ€ ๋œ๋‹ค.*/
display: inline-grid; /*์ปจํ…Œ์ด๋„ˆ ๋‚ด๋ถ€์˜ ์ฝ˜ํ…์ธ  ๋„“์ด๋งŒํผ ์ปจํ…Œ์ด๋„ˆ์˜ ๋„“์ด๊ฐ€ ๋œ๋‹ค.*/

๐Ÿ“Œ grid ๋ฐฐ์น˜ ๋ช…๋ น์–ด ์ •๋ฆฌ

grid-template-columns: 1fr 1fr 1fr; /*๊ทธ๋ฆฌ๋“œ์ปจํ…Œ์ด๋„ˆ ์•ˆ์˜ ํ•ญ๋ชฉ์„ ๋ช‡๊ฐœ์˜ ์นผ๋Ÿผ์œผ๋กœ ๋ฐฐ์น˜ํ• ์ง€, ๊ฐ ์นผ๋Ÿผ์˜ ๋„ˆ๋น„๋ฅผ ์–ผ๋งˆ๋กœ ํ• ์ง€ ์ง€์ •ํ•œ๋‹ค.*/
grid-template-rows: repeat(3, 1fr); /*์ถ•์•ฝํ˜•| ๊ทธ๋ฆฌ๋“œ์ปจํ…Œ์ด๋„ˆ ์•ˆ์˜ ๊ฐ ํ•ญ๋ชฉ์˜ ๋†’์ด๋ฅผ ์ง€์ •ํ•œ๋‹ค.*/

: px๋‹จ์œ„๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๊ณ ์ •๋˜๊ธฐ ๋•Œ๋ฌธ์— fr(Fraction)๋‹จ์œ„๋ฅผ ์‚ฌ์šฉํ•ด ์ƒ๋Œ€์ ์ธ ํฌ๊ธฐ๋ฅผ ์ง€์ •ํ•˜์—ฌ ๋ฐ˜์‘ํ˜•์›น์— ์ ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•œ๋‹ค!


  • ์ค„์˜ ๋†’์ด๋ฅผ ์ง€์ •ํ•  ๋•Œ ์ตœ์†Œ๊ฐ’๊ณผ ์ตœ๋Œ€๊ฐ’์„ ์ง€์ •ํ•œ๋‹ค
grid-template-rows: minmax(100px auto); /*์ง€์ •ํ•œ ๋†’์ด์— ๋„˜์น˜๋Š” ๊ฒƒ์„ ๋ฐฉ์ง€ํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉํ•˜๋Š” ํ•จ์ˆ˜*/

  • ๊ฐ„๊ฒฉ ์กฐ์ •
grid-column-gap: 20px; /*์นผ๋Ÿผ๊ณผ ์นผ๋Ÿผ์‚ฌ์ด์˜ ๊ฐ„๊ฒฉ*/
grid-row-gap: 10px; /*์ค„๊ณผ ์ค„์‚ฌ์ด์˜ ๊ฐ„๊ฒฉ*/
grid-gap:20px 10px; /*์นผ๋Ÿผ๊ณผ ์ค„ ์‚ฌ์ด์˜ ๊ฐ„๊ฒฉ์„ ํ•œ๊บผ๋ฒˆ์— ์ง€์ •*/

  • ์‹œ์ž‘ | ๋ ๋ฒˆํ˜ธ ์ง€์ •
grid-column-start: 2; /*์นผ๋Ÿผ ์‹œ์ž‘๋ฒˆํ˜ธ*/
grid-column-end: 3; /*์นผ๋Ÿผ ๋๋ฒˆํ˜ธ*/
grid-column: 2/3; /*์นผ๋Ÿฝ์‹œ์ž‘/๋๋ฒˆํ˜ธ*/

grid-row-start: 2; /*์ค„ ์‹œ์ž‘๋ฒˆํ˜ธ*/
grid-row-end: 3; /*์ค„ ๋๋ฒˆํ˜ธ*/
grid-row: 2/3; /*์ค„ ์‹œ์ž‘/๋ ๋ฒˆํ˜ธ*/

  • ํ•ฉ์น˜๊ธฐ
grid-column: span 2; /* ์„ธ๋กœ๋กœ 2์นธ ํ•ฉ์น˜๊ธฐ */
grid-row: span 2;  /* ๊ฐ€๋กœ๋กœ 2์นธ ํ•ฉ์น˜๊ธฐ */
/* grid-area: span 2 / span 2; -> ์ถ•์•ฝํ˜• */

๐Ÿ“š Reference

: ๊ตญ๋น„์ง€์› ์ˆ˜์—…

profile
โœจ๊ฐ๋ช…๊นŠ์€ ์•ž๋‹จ์„ ํ–ฅํ•œ ๊พธ์ค€ํ•œ ์—ฌ์ •โœจ
post-custom-banner

0๊ฐœ์˜ ๋Œ“๊ธ€