๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
DEV

CSS : Layout์˜ ๋ชจ๋“  ๊ฒƒ

by camille: 2024. 10. 20.
728x90
๋ฐ˜์‘ํ˜•

๐Ÿ“Œlayout ์ด๋ž€?

์›น์‚ฌ์ดํŠธ๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ์š”์†Œ๋“ค์„ ๋ฐฐ์น˜ํ•  ๊ณต๊ฐ„์„ ๋ถ„ํ• ํ•˜๊ณ  ์ •๋ ฌํ•˜๋Š” ๊ฒƒ์ด๋‹ค.

display๋Š” layout์„ ์ ์ ˆํ•˜๊ฒŒ ์กฐ์ •ํ•˜๋Š” ์ค‘์š”ํ•œ ์†์„ฑ์ด๋ผ๊ณ  ๋ณผ ์ˆ˜ ์žˆ๋‹ค. ๋ชจ๋“  ์š”์†Œ๋“ค์€ ์†์„ฑ์— ์˜๊ฑฐํ•˜์—ฌ ๊ธฐ๋ณธ๊ฐ’์„ ๊ฐ€์ง€๊ณ ์žˆ๋Š”๋ฐ, ๊ธฐ๋ณธ๊ฐ’์€ ๋Œ€๋ถ€๋ถ„ block ํ˜น์€ inline ์š”์†Œ๋“ค๋กœ ๊ตฌ์„ฑ๋˜์–ด์žˆ๋‹ค.

block์š”์†Œ๋Š” block-level์š”์†Œ๋ผ๊ณ  ๋ถˆ๋ฆฌ๋ฉฐ, line์š”์†Œ๋Š” inline-level์ด๋ผ๊ณ  ๋งํ•œ๋‹ค.

๐Ÿ“Œblock

div ํƒœ๊ทธ๋Š” block-level์˜ ํ‘œ์ค€์ด๋‹ค. ๋ฌด์กฐ๊ฑด ํ•œ ์ค„์„ ์ ์œ ํ•˜๊ณ  ์žˆ๊ธฐ ๋•Œ๋ฌธ์— block-level์€ ์ƒˆ๋กœ์šด ์ค„์—์„œ ์‹œ์ž‘ํ•˜๋ฉฐ, ์™ผ์ชฝ์—์„œ ์˜ค๋ฅธ์ชฝ์œผ๋กœ ์ตœ๋Œ€ํ•œ ํ™•์žฅ๋œ๋‹ค.

``` - width/height ์ ์šฉ๋ถˆ๊ฐ€ - margin/padding-top/bottom ์ ์šฉ๋ถˆ๊ฐ€ - line-height๋ฅผ ์›ํ•˜๋Š”๋Œ€๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†๋‹ค.

๐Ÿ“Œinline

๋Œ€ํ‘œ์ ์ธ ํƒœ๊ทธ๋กœ๋Š” span์„ ์˜ˆ๋กœ ๋“ค ์ˆ˜ ์žˆ๋Š”๋ฐ, text ํฌ๊ธฐ๋งŒํผ๋งŒ ๊ณต๊ฐ„์„ ์ ์œ ํ•˜๊ณ  ์ค„๋ฐ”๊ฟˆ์„ ํ•˜์ง€ ์•Š๋Š”๋‹ค.

  <span>
  spanํƒœ๊ทธ๋Š” ๊ฐ€์žฅ ํ‘œ์ค€์˜ inline์š”์†Œ์ด๋‹ค. 
  span์€ ๋ฌธ์žฅ์˜ ํ๋ฆ„์„ ๋ฐฉํ•ดํ•˜์ง€ ์•Š์œผ๋ฉด์„œ ํ…์ŠคํŠธ๋ฅผ ๊ฐ์‹ธ์ฃผ๋Š” ์—ญํ• ์„ ํ•œ๋‹ค. 
  <a> 
  aํƒœ๊ทธ๋Š” ๊ฐ€์žฅ ๊ณต๊ณต์—ฐํ•œ inline์š”์†Œ์ด๋‹ค.
  • width/height ์ ์šฉ๋ถˆ๊ฐ€
  • margin/padding-top/bottom ์ ์šฉ๋ถˆ๊ฐ€
  • line-height๋ฅผ ์›ํ•˜๋Š”๋Œ€๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†๋‹ค.

inline-block

inline-block ์†์„ฑ์€ inline ์†์„ฑ์˜ ํŠน์ง•๊ณผ block ์†์„ฑ์˜ ํŠน์ง• ๋‘˜ ๋‹ค ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ์†์„ฑ์ด๋‹ค. ๊ธฐ๋ณธ์ ์ธ ํŠน์ง•์€ inline ์†์„ฑ๊ณผ ๋น„์Šทํ•œ๋ฐ (์ค„๋ฐ”๊ฟˆ์„ ํ•˜์ง€ ์•Š๊ณ , ๋™์ผํ•œ ๋ผ์ธ์— ์ž‘์„ฑ๊ฐ€๋Šฅ) inline์†์„ฑ์—์„œ ํ•  ์ˆ˜ ์—†์—ˆ๋˜ width/height ๋ณ€๊ฒฝ ๋ฐ line-height๋ฅผ ์ปค์Šคํ…€ํ•˜๊ฒŒ ์ ์šฉํ•  ์ˆ˜ ์žˆ๋””.

  • width/height ์ ์šฉ ๊ฐ€๋Šฅ
  • margin/padding-top/bottom ์ ์šฉ ๊ฐ€๋Šฅ
  • line-height ์ ์šฉ ๊ฐ€๋Šฅ

๐Ÿ“Œposition

position ์†์„ฑ์€ ํƒœ๊ทธ๋ฅผ ์–ด๋–ป๊ฒŒ ์œ„์น˜์‹œํ‚ฌ์ง€๋ฅผ ์ •์˜ํ•˜๋ฉฐ, 5๊ฐ€์ง€์˜ ๊ฐ’์„ ๊ฐ–๋Š”๋‹ค.

  • static:๊ธฐ๋ณธ๊ฐ’, ๋‹ค๋ฅธํƒœ๊ทธ์™€์˜ ๊ด€๊ณ„์— ์˜ํ•ด ์ž๋™ ๋ฐฐ์น˜๋˜๋ฉฐ ์œ„์น˜๋ฅผ ์ž„์˜๋กœ ์„ค์ •ํ•ด ์ค„ ์ˆ˜ ์—†๋‹ค.
  • relative: ์›๋ž˜ ์žˆ๋˜ ์œ„์น˜๋ฅผ ๊ธฐ์ค€์œผ๋กœ ์ขŒ์ตธ๋ฅผ ์ง€์ •ํ•œ๋‹ค.
  • absolute: ์›๋ž˜ ์œ„์น˜์™€ ์ƒ๊ด€์—†์ด ์œ„์น˜๋ฅผ ์ง€์ •ํ•  ์ˆ˜ ์žˆ๋‹ค. ๋‹จ, ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ์ƒ์œ„ ์š”์†Œ๋ฅผ ๊ธฐ์ค€(๋ถ€๋ชจ)์œผ๋กœ ์œ„์น˜๊ฐ€ ๊ฒฐ์ •๋œ๋‹ค.
  • fixed: ์›๋ž˜์˜ ์œ„์น˜์™€ ์ƒ๊ด€์—†์ด ์œ„์น˜๋ฅผ ์ง€์ •ํ•  ์ˆ˜ ์žˆ์ง€๋งŒ ์ƒ์œ„ ์š”์†Œ์— ์˜ํ–ฅ์„ ๋ฐ›์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— ํ™”๋ฉด์ด ๋ฐ”๋€Œ๋”๋ผ๋„ ๊ณ ์ •๋œ ์œ„์น˜๋ฅผ ์„ค์ •ํ•  ์ˆ˜ ์žˆ๋‹ค. ์Šคํฌ๋กค๊ณผ ์ƒ๊ด€์—†์ด ํ•ญ์ƒ ๋ฌธ์„œ๋ฅผ ์ตœ ์ขŒ์ธก ์ƒ๋‹จ์„ ๊ธฐ์ค€์œผ๋กœ ์ขŒํ‘œ๋ฅผ ๊ณ ์ •
  • inherit: ๋ถ€๋ชจํƒœ๊ทธ์˜ ์†์„ฑ๊ฐ’์„ ์ƒ์† ๋ฐ›๋Š”๋‹ค.

์ขŒํ‘œ๋ฅผ ์ง€์ •์„ ํ•ด์ฃผ๊ธฐ ์œ„ํ•ด์„œ๋Š” left, right, top, bottom์†์„ฑ๊ณผ ํ•จ๊ป˜ ์‚ฌ์šฉํ•œ๋‹ค.
*position์„ absolute๋‚˜ fixed๋กœ ์„ค์ •ํ•  ๋•Œ ๊ฐ€๋กœ ํฌ๊ธฐ๊ฐ€ 100%๊ฐ€ ๋˜๋Š” block ํƒœ๊ทธ์˜ ํŠน์ง•์ด ์‚ฌ๋ผ์ง€๊ฒŒ ๋œ๋‹ค.

๐Ÿ“™ absolute์™€ relative

relative์ธ ์ปจํ…Œ์ด๋„ˆ ๋‚ด๋ถ€์— absolute์ธ ๊ฐ์ฒด๊ฐ€ ์žˆ์œผ๋ฉด ์ ˆ๋Œ€ ์ขŒํ‘œ๋ฅผ ๊ณ„์‚ฐํ•  ๋•Œ, relative ์ปจํ…Œ์ด๋„ˆ๋ฅผ ๊ธฐ์ค€์ ์œผ๋กœ ์žก๊ฒŒ ๋œ๋‹ค.

728x90
๋ฐ˜์‘ํ˜•