CSS_02_Layout

Seungju Hwangยท2020๋…„ 8์›” 23์ผ
0

CSS

๋ชฉ๋ก ๋ณด๊ธฐ
3/4
post-thumbnail

Layout

์›นํŽ˜์ด์ง€์— ํฌํ•จ๋˜๋Š” ์š”์†Œ๋“ค์„ ์–ด๋–ป๊ฒŒ ์ทจํ•ฉํ•˜๊ณ  ๊ทธ๊ฒƒ๋“ค์ด ์–ด๋Š ์œ„์น˜์— ๋†“์ผ ๊ฒƒ์ธ์ง€๋ฅผ ์ œ์–ดํ•œ๋‹ค.

1 float

ํ•œ ์š”์†Œ(element)๊ฐ€ ์ •์ƒ ํ๋ฆ„์œผ๋กœ๋ถ€ํ„ฐ ๋น ์ ธ, ํ…์ŠคํŠธ ๋ฐ ์ธ๋ผ์ธ ์š”์†Œ๊ฐ€ ๊ทธ ์ฃผ์œ„๋ฅผ ๊ฐ์‹ธ ์ž๊ธฐ ์ปจํ…Œ์ด๋„ˆ์˜ ์ขŒ, ์šฐ์ธก์— ๋”ฐ๋ผ ๋ฐฐ์น˜๋˜์–ด์•ผ ํ•จ์„ ์ง€์ •ํ•œ๋‹ค.

1.1 ํŠน์ง•

  • float:left ์™ผ์ชฝ์œผ๋กœ ๋ถ™๊ฒŒ ๋˜๊ณ , ๋”ฐ๋กœ inline์„ ์„ค์ •์•ˆํ•ด๋„ ์•„๋ž˜ ๊ทธ๋ฆผ๊ณผ ๊ฐ™์ด ํ…์ŠคํŠธ๊ฐ€ ๊ฐ์‹ธ๊ฒŒ ๋œ๋‹ค.

  • flexbox ๋ฐ ๊ทธ๋ฆฌ๋“œ ๋ ˆ์ด์•„์›ƒ๊ณผ ๊ฐ™์€ ๊ธฐ์ˆ ๋กœ ์ธํ•ด ๋ ˆ๊ฑฐ์‹œ ๋ ˆ์ด์•„์›ƒ ๊ธฐ์ˆ ๋กœ ๋ถ„๋ฅ˜๋จ์œผ๋กœ์จ, ์•„๋ž˜ ๊ทธ๋ฆผ ์šฉ๋„๋กœ๋งŒ ํ™œ์šฉ๋˜๊ณ  ์žˆ๋‹ค.

1.2 clearfix

  • float ์š”์†Œ์™€ ๋‹ค๋ฅธ ํ…์ŠคํŠธ๊ฐ€์•„๋‹Œ block ์š”์†Œ๊ฐ„์˜ ๋ ˆ์ด์•„์›ƒ ๊นจ์ง์„ ๋ง‰๊ธฐ ์œ„ํ•ด ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ž‘์„ฑํ•œ๋‹ค.

2 flexbox

์ผ๋ช… flexbox๋ผ ๋ถˆ๋ฆฌ๋Š” Flexible Box module์€ flexbox ์ธํ„ฐํŽ˜์ด์Šค ๋‚ด์˜ ์•„์ดํ…œ ๊ฐ„ ๊ณต๊ฐ„ ๋ฐฐ๋ถ„๊ณผ ๊ฐ•๋ ฅํ•œ ์ •๋ ฌ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜๊ธฐ ์œ„ํ•œ 1์ฐจ์› ๋ ˆ์ด์•„์›ƒ ๋ชจ๋ธ๋กœ ์„ค๊ณ„๋˜์—ˆ๋‹ค.

์›นํŽ˜์ด์ง€์˜ ์ปจํ…Œ์ด๋„ˆ์— ์•„์ดํ…œ์˜ ํญ๊ณผ ๋†’์ด ๋˜๋Š” ์ˆœ์„œ๋ฅผ ๋ณ€๊ฒฝํ•ด์„œ ์›นํŽ˜์ด์ง€์˜ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ๊ณต๊ฐ„์„ ์ตœ๋Œ€ํ•œ ์ฑ„์šฐ๊ณ  ์ด๋ฅผ ๋””๋ฐ”์ด์Šค ์ข…๋ฅ˜์— ๋”ฐ๋ผ ์œ ์—ฐํ•˜๊ฒŒ ๋ฐ˜์˜ํ•˜๋„๋ก ํ•˜๋Š” ๊ฐœ๋…

2.1 ๊ฐœ๋…

  • ์š”์†Œ
    • flex container
    • flex items
  • ์ถ•
    • main axis (์ฃผ์ถ•)
    • cross axis (๊ต์ฐจ์ถ•)

2.2 flex container

  • flexbox ๋ ˆ์ด์•„์›ƒ์„ ํ˜•์„ฑํ•˜๋Š” ๊ฐ€์žฅ ๊ธฐ๋ณธ์ ์ธ ๋ชจ๋ธ
  • flexbox๊ฐ€ ๋†“์—ฌ์žˆ๋Š” ์˜์—ญ
  • flex ์ปจํ…Œ์ด๋„๋ฅด ์ƒ์„ฑํ•˜๋ ค๋ฉด ์˜์—ญ ๋‚ด์˜ ์ปจํ…Œ์ด๋„ˆ ์š”์†Œ์˜ display ๊ฐ’์„ flex ํ˜น์€ inline-flex๋กœ ์„ค์ •
  • flex ์ปจํ…Œ์ด๋„ˆ๋ฅผ ์„ ์–ธ์‹œ ์•„๋ž˜์™€ ๊ฐ™์ด ๊ธฐ๋ณธ ๊ฐ’์ด ์ง€์ •
    • item: row
    • item์€ mainstart์—์„œ ์‹œ์ž‘
    • item์€ ๊ต์ฐจ์ถ•์˜ ํฌ๊ธฐ๋ฅผ ์ฑ„์šฐ๊ธฐ ์œ„ํ•ด ๋Š˜์–ด๋‚จ (stretch)
    • flex-wrap: nowrap (item์ด container๋ฐ–์œผ๋กœ ๋„˜์–ด๊ฐ)

2.3 flex-direction

์Œ“์ด๋Š” ๋ฐฉํ–ฅ ์„ค์ • (main-axis ์˜ ๋ฐฉํ–ฅ๋งŒ ๋ฐ”๋€œ. flex ๋Š” single-direction layout concept ์ด๊ธฐ ๋•Œ๋ฌธ)

  • row (๊ธฐ๋ณธ๊ฐ’)
    • ๊ฐ€๋กœ๋กœ ์š”์†Œ๊ฐ€ ์Œ“์ž„
    • row ๋Š” ์ฃผ์ถ•์˜ ๋ฐฉํ–ฅ์„ ์™ผ์ชฝ์—์„œ ์˜ค๋ฅธ์ชฝ์œผ๋กœ ํ๋ฅด๊ฒŒ ํ•œ๋‹ค.
  • row-reverse
  • column
    • ์„ธ๋กœ๋กœ ์š”์†Œ๊ฐ€ ์Œ“์ž„
    • column ์€ ์ฃผ์ถ•์˜ ๋ฐฉํ–ฅ์„ ์œ„์—์„œ ์•„๋ž˜๋กœ ํ๋ฅด๊ฒŒ ํ•œ๋‹ค.
  • column-reverse

2.4 flex-wrap

item๋“ค์ด ๊ฐ•์ œ๋กœ ํ•œ ์ค„์— ๋ฐฐ์น˜ ๋˜๊ฒŒ ํ•  ๊ฒƒ์ธ์ง€ ์—ฌ๋ถ€ ์„ค์ •

  • nowrap (๊ธฐ๋ณธ ๊ฐ’)
    • ๋ชจ๋“  ์•„์ดํ…œ๋“ค ํ•œ ์ค„์— ๋‚˜ํƒ€๋‚ด๋ ค๊ณ  ํ•จ (๊ทธ๋ž˜์„œ ์ž๋ฆฌ๊ฐ€ ์—†์–ด๋„ ํŠ€์–ด๋‚˜์˜ด)
  • wrap : ๋„˜์น˜๋ฉด ๊ทธ ๋‹ค์Œ ์ค„๋กœ
  • wrap-reverse : ๋„˜์น˜๋ฉด ๊ทธ ์œ—์ค„๋กœ (์—ญ์ˆœ)

2.5 justify-content

main axis ์ •๋ ฌ

flex-direction: row ๊ธฐ์ค€์œผ๋กœ ์ž‘์„ฑ๋จ

  • flex-start (๊ธฐ๋ณธ ๊ฐ’)
    • ์‹œ์ž‘ ์ง€์ ์—์„œ ์Œ“์ž„(์™ผ์ชฝ โ†’ ์˜ค๋ฅธ์ชฝ)
  • flex-end
    • ์Œ“์ด๋Š” ๋ฐฉํ–ฅ์ด ๋ฐ˜๋Œ€ (flex-direction: row-reverse ์™€๋Š” ๋‹ค๋ฅด๋‹ค. ์•„์ดํ…œ์˜ ์ˆœ์„œ๋Š” ๊ทธ๋Œ€๋กœ ์ •๋ ฌ๋งŒ ์šฐ์ธก์— ๋˜๋Š” ๊ฒƒ.)
  • center
  • space-between
    • ์ขŒ์šฐ ์ •๋ ฌ (item ๋“ค ๊ฐ„๊ฒฉ ๋™์ผ)
  • space-around
    • ๊ท ๋“ฑ ์ขŒ์šฐ ์ •๋ ฌ (๋‚ด๋ถ€ ์š”์†Œ ์—ฌ๋ฐฑ์€ ์™ธ๊ณฝ ์—ฌ๋ฐฑ์˜ 2๋ฐฐ)
  • space-evenly
    • ๊ท ๋“ฑ ์ •๋ ฌ (๋‚ด๋ถ€ ์š”์†Œ ์—ฌ๋ฐฑ๊ณผ ์™ธ๊ฐ ์—ฌ๋ฐฑ ๋ชจ๋‘ ๋™์ผ)

2.6 align-items

cross axis ์—ฌ๋Ÿฌ ์ค„ ์ •๋ ฌ

flex-direction: row ๊ธฐ์ค€์œผ๋กœ ์ž‘์„ฑ๋จ

  • stretch (๊ธฐ๋ณธ ๊ฐ’)
    • ์ปจํ…Œ์ด๋„ˆ๋ฅผ ๊ฐ€๋“ ์ฑ„์›€
  • flex-start
    • ์œ„
  • flex-end
    • ์•„๋ž˜
  • center
  • baseline
    • item ๋‚ด๋ถ€์˜ text์— ๊ธฐ์ค€์„ ์„ ๋งž์ถค

2.7 align-self

align-items ์™€ ๋™์ผ (๋‹จ, ๊ฐœ๋ณ„ item ์— ์ ์šฉ)

  • auto (๊ธฐ๋ณธ ๊ฐ’)
  • flex-start
  • flex-end
  • center
  • baseline
  • stretch
    • ๋ถ€๋ชจ ์ปจํ…Œ์ด๋„ˆ์— ์ž๋™์œผ๋กœ ๋งž์ถฐ์„œ ๋Š˜์–ด๋‚œ๋‹ค. (Stretch 'auto'-sized items to fit the container)

2.8 order

  • ๊ธฐ๋ณธ ๊ฐ’ : 0
  • ์ž‘์€ ์ˆซ์ž ์ผ์ˆ˜๋ก ์•ž(์™ผ์ชฝ)์œผ๋กœ ์ด๋™.

2.9 flex-grow

  • ๊ธฐ๋ณธ ๊ฐ’ : 0
  • ์ฃผ์ถ•์—์„œ ๋‚จ๋Š” ๊ณต๊ฐ„์„ ํ•ญ๋ชฉ๋“ค์—๊ฒŒ ๋ถ„๋ฐฐํ•˜๋Š” ๋ฐฉ๋ฒ•
  • ๊ฐ ์•„์ดํ…œ์˜ ์ƒ๋Œ€์  ๋น„์œจ์„ ์ •ํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹˜
  • ์Œ์ˆ˜๋Š” ๋ถˆ๊ฐ€๋Šฅ
profile
๊ธฐ๋กํ•˜๋Š” ์Šต๊ด€์€ ์‰ฝ๊ฒŒ ๋ฌด๋„ˆ์ง€์ง€ ์•Š์•„์š”.

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