๋ฉ‹์Ÿ์ด ์‚ฌ์ž์ฒ˜๋Ÿผ

HTML & CSS flex ์ •๋ฆฌ

youngdeok 2023. 3. 8. 18:58

 

์›นํŽ˜์ด์ง€ ํ˜น์€ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ํ™”๋ฉด์„ ๋งŒ๋“ค๋•Œ ์šฐ๋ฆฌ๋Š” ์ˆ˜ํ‰์  ์š”์†Œ๋“ค์— ๋Œ€ํ•œ ๋ฐฐ์น˜๋ฅผ ํ• ๋•Œ ๊ณ ๋ฏผ์„ ํ•ฉ๋‹ˆ๋‹ค. float, grid, flex์ค‘์— ์–ด๋–ค ๊ฒƒ์„ ์‚ฌ์šฉํ• ์ง€์— ๋Œ€ํ•œ ๊ฒƒ์„ ๋ง์ด์ฃ .

์šฐ๋ฆฌ๊ฐ€ ๋งŽ์ด ์‚ฌ์šฉํ•˜๋Š” ์š”์†Œ๋“ค ์˜ˆ๋ฅผ ๋“ค์–ด div, p, footer๋“ฑ์€ ๋ธ”๋Ÿญ์˜ ๊ฐœ๋…์œผ๋กœ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค. ์ด ์นœ๊ตฌ๋“ค์€ ๋ธ”๋Ÿญ์š”์†Œ๋กœ ํ™”๋ฉด์˜ width๋ฅผ ๋‹ค ์ฐจ์ง€ํ•ด ๋ฒ„๋ฆฝ๋‹ˆ๋‹ค. 

์š”์†Œ๋“ค์„ ์˜†์— ๋‘์ง€ ์•Š๊ณ  ๋ฐ‘์—(?)๋‘์ฃ . ์ด๋Ÿฐ ๋น„ ์‚ฌ๊ต์ ์ธ ์นœ๊ตฌ๋“ค์„ ์‚ฌ๊ต์ ์œผ๋กœ ๋งŒ๋“ค์ˆ˜ ์žˆ๋Š” flex์— ๋Œ€ํ•œ ์„ค๋ช…์„ ํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

 


์ด๋ฏธ์ง€์—์„œ ์ฃผ์ถ•๊ณผ ๊ต์ฐจ์ถ• flex-direction์ด ๋ณด์ด์‹œ๋‚˜์š”???

์ด๊ฒƒ๋“ค์€ ํ™”๋ฉด์— ๋ณด์ด๋Š” ์ปจํ…Œ์ด๋„ˆ๋“ค ์ฆ‰ ์š”์†Œ๋“ค์„ ์–ด๋–ป๊ฒŒ ๋ฐฐ์น˜ํ•˜๋А๋ƒ์— ์ค‘์š”ํ•œ ํ‚ค์›Œ๋“œ ๋“ค์ž…๋‹ˆ๋‹ค.


flex-direction

  • ์ปจํ…Œ์ด๋„ˆ ๋‚ด ์•„์ดํ…œ์„ ๋ฐฐ์น˜ํ•  ๋•Œ ์ฃผ์ถ• ๋ฐ ๋ฐฉํ–ฅ์„ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค.
  • row : ๊ธฐ๋ณธ๊ฐ’. ์™ผ์ชฝ์—์„œ ์˜ค๋ฅธ์ชฝ (์ฃผ์ถ•์ด ํ–‰ ๋ฐฉํ–ฅ)
  • column: ์œ„์—์„œ ์•„๋ž˜ ๋ฐฉํ–ฅ (์ฃผ์ถ•์ด ์—ด ๋ฐฉํ–ฅ)
  • row-reverse: ์˜ค๋ฅธ์ชฝ์—์„œ ์™ผ์ชฝ
  • column-reverse: ์•„๋ž˜์—์„œ ์œ„ ๋ฐฉํ–ฅ

justify-content

  • ์ฃผ์ถ•์„ ๊ธฐ์ค€์œผ๋กœ ๋ฐฐ์—ด์˜ ์œ„์น˜๋ฅผ ์กฐ์ ˆํ•˜๊ฑฐ๋‚˜ ์•„์ดํ…œ ๊ฐ„์˜ ์„ค์ •์„ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

align-items

  • ๊ต์ฐจ ์ถ•์„ ๊ธฐ์ค€์œผ๋กœ ์ •๋ ฌํ•ฉ๋‹ˆ๋‹ค.

 

๋ฐฑ๊ฒฌ์ด ๋ถˆ์—ฌ์ผํ–‰! ํ•œ๋ฒˆ ํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

โš ๏ธ์‚ฌ์šฉ์ „ ๋ถ€๋ชจ ์š”์†Œ์— display: flex๋ฅผ ์„ค์ •ํ•ด ์ค๋‹ˆ๋‹ค.

 

flex-direction: row, justify-content: center

์ฃผ์ถ•์ธ (์™ผ์ชฝ- > ์˜ค๋ฅธ์ชฝ) ๋ฐฉํ–ฅ์œผ๋กœ  ์ •๋ ฌ๋œ ๋ชจ์Šต์„ ๋ณผ ์ˆ˜ ์žˆ์„ ๊ฒ๋‹ˆ๋‹ค. ์ด๋Ÿฐ ์‹์œผ๋กœ ์‚ฌ์šฉํ•˜๊ธฐ ๋•Œ๋ฌธ์— flex-direction ์—์„œ ์–ด๋–ค ์†์„ฑ์„ ์‚ฌ์šฉํ•   ๊ฒƒ์ธ์ง€ ๋ฏธ๋ฆฌ ์‚ฌ์šฉ์ „ ์ •ํ•ด ๋†“๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค!.

 

 

flex-direction: row, justify-content: center, aligh-items: center

์ฃผ์ถ•์ธ (์™ผ์ชฝ- > ์˜ค๋ฅธ์ชฝ) ๋ฐฉํ–ฅ์œผ๋กœ ์ค‘์•™๊ณผ ๊ต์ฐจ์ถ•์ธ(์œ„ -> ์•„๋ž˜) ๋ฐฉํ–ฅ์œผ๋กœ  ์ •๋ ฌ๋œ ๋ชจ์Šต์„ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

 

flex-container์— ์‚ฌ์šฉํ•˜๋Š” ์†์„ฑ

gap

  • ์•„์ดํ…œ ์‚ฌ์ด์˜ ๊ฐ„๊ฒฉ์„ ์„ค์ •ํ•  ๋•Œ ์‚ฌ์šฉ ํ•  ์ˆ˜ ์žˆ๋Š” ์†์„ฑ์ž…๋‹ˆ๋‹ค.
  • ํ”Œ๋ ‰์Šค ์š”์†Œ ์•ˆ์—์„œ ์‚ฌ์šฉํ•˜๋ฉด ์ปจํ…Œ์ด๋„ˆ๋“ค์—๊ฒŒ ๊ฐญ์„ ์ค„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋งˆ์ง„์ฒ˜๋Ÿผ์š”.

flex-wrap

  • ํ•œ ์ค„์— ๋ฐฐ์น˜๋˜๊ฒŒ ํ•  ๊ฒƒ์ธ์ง€, ๊ฐ€๋Šฅํ•œ ์˜์—ญ ๋‚ด์—์„œ ์—ฌ๋Ÿฌ ํ–‰์œผ๋กœ ๋‚˜๋ˆ„์–ด ํ‘œํ˜„ํ•  ๊ฒƒ์ธ์ง€ ๊ฒฐ์ •ํ•ฉ๋‹ˆ๋‹ค.
  • ๋ธŒ๋ผ์šฐ์ € ํฌ๊ธฐ์— ์œ ์—ฐํ•˜๊ฒŒ ๋ฐ˜์‘์‹œํ‚ค๊ณ  ์‹ถ์œผ์‹ค ๋•Œ ์‚ฌ์šฉํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค.

flex

  • ๋‹จ์ถ•์†์„ฑ
  • flex-grow flex-shrink flex-basis
  • flex-grow: ๋ธŒ๋ผ์šฐ์ € ํฌ๊ธฐ๋ฅผ ๋Š˜๋ฆด ๋–„ ์œ ์—ฐํ•˜๊ฒŒ ๋ฐ˜์‘ํ•˜๊ธฐ ์œ„ํ•ด์„œ.
  • flex-shrink: ๋ธŒ๋ผ์šฐ์ € ํฌ๊ธฐ๋ฅผ ์ค„์ผ ๋–„ ์œ ์—ฐํ•˜๊ฒŒ ๋ฐ˜์‘ํ•˜๊ธฐ ์œ„ํ•ด์„œ.
  • flex-basis: ์š”์†Œ๋“ค์˜ ์ดˆ๊ธฐ ๊ฐ’์„ ์ง€์ •ํ•ด ์ค๋‹ˆ๋‹ค.