ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [๋ฉด์ ‘ ์งˆ๋ฌธ ์ •๋ฆฌ] - CSS, ํ”„๋ ˆ์ž„์›Œํฌ
    CS 2023. 3. 3. 20:00

    ๐Ÿ’ก box model์˜ ์ „์ฒด ํฌ๊ธฐ

    : ์ฝ˜ํ…์ธ  ํฌ๊ธฐ + padding ๊ฐ’ + border ๊ฐ’ + margin ๊ฐ’

    React, Vue, Angular์˜ ์ฐจ์ด๋Š” ๋ฌด์—‡์ธ๊ฐ€์š”? 

       - ์ผ๋‹จ 3๊ฐœ์˜ ๊ณตํ†ต์ ์€ SPA๊ธฐ๋ฐ˜ ํ”„๋ก ํŠธ์—”๋“œ ํ”„๋ ˆ์ž„์›Œํฌ/๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์ธ๊ฒƒ์ด๋‹ค. ๋ฆฌ์•กํŠธ๋Š” ๋‹จ๋ฐฉํ–ฅ ๋ฐ”์ธ๋”ฉ์œผ๋กœ ๋ถ€๋ชจ ์ปดํฌ๋„ŒํŠธ์—์„œ props๊ฐ€ ์ž์‹ ์ปดํฌ๋„ŒํŠธ๋กœ ์ „๋‹ฌ๋˜๊ณ , vue๋‚˜ angular๋Š” ์–‘๋ฐฉํ–ฅ ๋ฐ”์ธ๋”ฉ์ด ๊ตฌํ˜„ ๊ฐ€๋Šฅํ•˜๋‹ค๋Š” ์ฐจ์ด๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ๋Ÿฌ๋‹์ปค๋ธŒ๋Š” ๋ทฐ๊ฐ€ ๊ฐ€์žฅ ๋‚ฎ๊ณ , ๋ฆฌ์•กํŠธ๋Š” jsx ๋ฌธ๋ฒ•์„ ์‚ฌ์šฉํ•˜๋ฉฐ, ๊ฐœ๋ฐœ ์ƒํƒœ๊ณ„๊ฐ€ ๊ฐ€์žฅ ์ž˜ ํ™œ์„ฑํ™” ๋˜์–ด์žˆ๋‹ค. ํฐ ๊ทœ๋ชจ์˜ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ์— ์œ ๋ฆฌํ•˜๋‹ค. ๋ทฐ์™€ ์•ต๊ทค๋Ÿฌ๋Š” ํ”„๋ ˆ์ž„์›Œํฌ์ด๋‹ค. ์•ต๊ทค๋Ÿฌ๋Š” ํƒ€์ž…์Šคํฌ๋ฆฝํŠธ๋ฅผ ์‚ฌ์šฉํ•จ์œผ๋กœ์จ ์ฝ”๋“œ์˜ ๊ฐ€๋…์„ฑ๊ณผ ์•ˆ์ •์„ฑ์ด ์ข‹์ง€๋งŒ ๋Ÿฌ๋‹์ปค๋ธŒ๊ฐ€ ํฌ๋‹ค. 

     

     

    ๋ฆฌ์•กํŠธ์™€ ๋ทฐ์˜ ์ฐจ์ด 1

    react๋Š” UI ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์ด๋ฉฐ Vue๋Š” ํ”„๋ ˆ์ž„์›Œํฌ์ด๋‹ค. ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋Š” ์ฐธ๊ณ ๊ฐ€ ์šฉ์ดํ•˜๊ณ , ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์˜ ์ผ๋ถ€๋ถ„๋งŒ ๊ฐ€์ ธ์™€์„œ ์‚ฌ์šฉํ•˜๋Š” ๊ฒŒ ํŽธ๋ฆฌํ•˜๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๋ฆฌ์•กํŠธ๋Š” UI ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์ด๊ธฐ ๋•Œ๋ฌธ์— ๋ฆฌ์•กํŠธ ์ž์ฒด๋งŒ์œผ๋กœ๋Š” ์ „์—ญ ์ƒํƒœ ๊ด€๋ฆฌ, ๋ผ์šฐํŒ…, ๋นŒ๋“œ ์‹œ์Šคํ…œ ๋“ฑ์„ ์ง€์›ํ•˜์ง€ ์•Š๋Š”๋‹ค. ๊ทธ๋ ‡๊ธฐ ๋•Œ๋ฌธ์— ๋ฆฌ์•กํŠธ๋Š” ๋ณ„๋„์˜ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ํ†ตํ•ด Redux, Recoil, React-router-dom ๋“ฑ์„ ์‚ฌ์šฉํ•ด์•ผ ํ•œ๋‹ค. ๊ทธ๋ ‡๊ธฐ ๋•Œ๋ฌธ์— ์‚ฌ์šฉ์ž๊ฐ€ ํ•„์š”ํ•  ๋•Œ์— ํ•„์š”ํ•  ๋•Œ ๊ฐ€์ ธ๋‹ค ์“ฐ๊ณ , ๋นผ๋ฉฐ ๋ถ€๋ถ„์ ์œผ๋กœ ์‚ฌ์šฉ์ด ๊ฐ€๋Šฅํ•˜๋‹ค.

     ๋ฐ˜๋ฉด ๋ทฐ๋Š” ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ํ”„๋ ˆ์ž„์›Œํฌ์ด๋‹ค. ๋ถ€๋ถ„์ ์ธ ์‚ฌ์šฉ์ด ๋ถˆ๊ฐ€๋Šฅํ•˜๊ณ  ํ”„๋ ˆ์ž„์›Œํฌ ์•ˆ์œผ๋กœ ๋“ค์–ด๊ฐ€์„œ ํ”„๋ ˆ์ž„ ์›Œํฌ๊ฐ€ ์ง€์›ํ•ด์ฃผ๋Š” ๋ฌธ๋ฒ•์— ๋”ฐ๋ผ ์ž‘์„ฑํ•ด์ฃผ์–ด์•ผ ํ•œ๋‹ค. ๊ทธ๋ ‡๊ธฐ ๋•Œ๋ฌธ์— ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์™€ ๋‹ฌ๋ฆฌ ๋” ๋งŽ์€ ๊ธฐ๋Šฅ์„ ๋””ํดํŠธ๋กœ ์ œ๊ณตํ•ด์ค€๋‹ค. ์ด๋Ÿฌํ•œ ์„ฑ๊ฒฉ์œผ๋กœ ์ธํ•ด ๋ฆฌ์•กํŠธ๋Š” ๋ฆฌ์•กํŠธ๋Š” ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๋ฌธ๋ฒ•์„ ์‘์šฉํ•˜์—ฌ ๊ฐœ๋ฐœ์ž์— ๋”ฐ๋ผ ์ž์œ ๋กญ๊ฒŒ ๊ฐœ๋ฐœ์„ ํ•  ์ˆ˜ ์žˆ๊ณ , ๋ทฐ๋Š” ํ”„๋ ˆ์ž„์›Œํฌ ์‚ฌ์šฉ์— ์ง€์ •๋œ ๋ฌธ๋ฒ• ๋ฐฉ์‹์œผ๋กœ๋งŒ ๊ฐœ๋ฐœํ•  ์ˆ˜ ์žˆ๋‹ค. ํŒจํ„ด์˜ ์ฐจ์ด๋กœ ์ธํ•ด ํ˜ธ๋ถˆํ˜ธ๊ฐ€ ๋‚˜๋‰˜์ง€๋งŒ, vue์—์„œ ์ž‘์„ฑ๋˜๋Š” ์ฝ”๋“œ๊ฐ€ ๊ฐ€์‹œ์„ฑ ๋ฐ ์ƒ์‚ฐ์„ฑ์ด ์ข‹๋‹ค๋Š” ํ‰์ด ๋งŽ๋‹ค.

     

     

    V-model

    ์ปดํฌ๋„ŒํŠธ์—์„œ ์‚ฌ์šฉํ•˜์—ฌ ์–‘๋ฐฉํ–ฅ ๋ฐ”์ธ๋”ฉ์„ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. v-model ์†์„ฑ์€ v-bind์™€ v-on์˜ ๊ธฐ๋Šฅ์˜ ์กฐํ•ฉ์œผ๋กœ ๋™์ž‘ํ•ฉ๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž์˜ ์ž…๋ ฅ์„ ๋ฐ›๋Š” UI ์š”์†Œ๋“ค์— v-model์ด๋ผ๋Š” ์†์„ฑ์„ ์‚ฌ์šฉํ•˜๋ฉด ์ž…๋ ฅ ๊ฐ’์ด ์ž๋™์œผ๋กœ ๋ทฐ ๋ฐ์ดํ„ฐ ์†์„ฑ์— ์—ฐ๊ฒฐ๋ฉ๋‹ˆ๋‹ค.

     

    V-model

    V ๋ชจ๋ธ(V-model)์€ ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ ํ”„๋กœ์„ธ์Šค๋กœ ํญํฌ์ˆ˜ ๋ชจ๋ธ์˜ ํ™•์žฅ๋œ ํ˜•ํƒœ ์ค‘ ํ•˜๋‚˜๋กœ ๋ณผ ์ˆ˜ ์žˆ๋‹ค. V ๋ชจ๋ธ์€ ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ์˜ ๊ฐ ๋‹จ๊ณ„๋งˆ๋‹ค ์ƒ์„ธํ•œ ๋ฌธ์„œํ™”๋ฅผ ํ†ตํ•ด ์ž‘์—…์„ ์ง„ํ–‰ํ•˜๋Š” ์ž˜ ์งœ์ธ ๋ฐฉ๋ฒ•์„ ์‚ฌ์šฉํ•œ๋‹ค. ๋˜ํ•œ ํ…Œ์ŠคํŠธ ์„ค๊ณ„์™€ ๊ฐ™์€ ํ…Œ์ŠคํŠธ ํ™œ๋™์„ ์ฝ”๋”ฉ ์ดํ›„๊ฐ€ ์•„๋‹Œ ํ”„๋กœ์ ํŠธ ์‹œ์ž‘ ์‹œ์— ํ•จ๊ป˜ ์‹œ์ž‘ํ•˜์—ฌ, ์ „์ฒด์ ์œผ๋กœ ๋งŽ์€ ์–‘์˜ ํ”„๋กœ์ ํŠธ ๋น„์šฉ๊ณผ ์‹œ๊ฐ„์„ ๊ฐ์†Œ์‹œํ‚จ๋‹ค.

     

     

    "attribute"์™€ "property"์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”? 

      - Attributes๋Š” HTML ์š”์†Œ์˜ ์ถ”๊ฐ€์ ์ธ ์ •๋ณด๋ฅผ ์ „๋‹ฌํ•˜๊ณ  ์ด๋ฆ„="๊ฐ’" ์ด๋ ‡๊ฒŒ ์Œ์œผ๋กœ ์˜จ๋‹ค. ์˜ˆ๋ฅผ๋“ค์–ด <div class="my class"></div> ๋ฅผ ๋ณด๋ฉด div ํƒœ๊ทธ๊ฐ€ class๋ผ๋Š” ๊ฐ’์ด "my class"์ธ attribute๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค.
     Property๋Š” attribute์— ๋Œ€ํ•œ HTML DOMํŠธ๋ฆฌ ์•ˆ์—์„œ์˜ ํ‘œํ˜„์ด๋‹ค. ๊ฐ™์€ ์˜ˆ์‹œ์—์„œ attribute๋Š” ๊ฐ’์ด "myclass"์ด๊ณ  ์ด๋ฆ„์ด className์ธ property๋ฅผ ๊ฐ€์ง„๋‹ค. 
    ๋‘˜์˜ ์ฐจ์ด๋Š” Attribute๋Š” HTML ํ…์ŠคํŠธ ๋ฌธ์„œ์— ์žˆ๋Š” ๊ฒƒ์ด๊ณ , property๋Š” HTML DOM ํŠธ๋ฆฌ์— ์žˆ๋Š” ๊ฒƒ์ด๋‹ค. attribute๋Š” ๋ณ€ํ•˜์ง€ ์•Š๊ณ , property๋Š” ๋ณ€ํ•  ์ˆ˜ ์žˆ๋‹ค. ๊ฐ€๋ น ์‚ฌ์šฉ์ž๊ฐ€ ์ฒดํฌ๋ฐ•์Šค๋ฅผ ์ฒดํฌํ•˜๋ฉด property์˜ ๊ฐ’์€ ๋ณ€ํ•˜๋Š” ๊ฒƒ์ด๋‹ค.(DOM์•ˆ์— ์กด์žฌํ•˜๊ณ  ๋™์ ์ด๊ธฐ ๋•Œ๋ฌธ์—) 

     

    CSS์—์„œ margin๊ณผ padding์ด๋ž€?

    • margin: ๋ฐ”๊นฅ์ชฝ ์—ฌ๋ฐฑ์„ ์˜๋ฏธ
    • padding: ์•ˆ์ชฝ ์—ฌ๋ฐฑ์„ ์˜๋ฏธ

     

    CSS์—์„œ position์ด๋ž€?

    position ์†์„ฑ์€ ๋ฌธ์„œ ์ƒ์— ์š”์†Œ๋ฅผ ๋ฐฐ์น˜ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์ง€์ •ํ•œ๋‹ค.

    • static: ์š”์†Œ๋ฅผ ์ผ๋ฐ˜์ ์ธ ๋ฌธ์„œ ํ๋ฆ„์— ๋”ฐ๋ผ ๋ฐฐ์น˜
    • relative: static + ์ž์‹ ์„ ๊ธฐ์ค€์œผ๋กœ top, rigth, bottom, left์˜ ๊ฐ’์— ๋”ฐ๋ผ ์˜คํ”„์…‹์„ ์ ์šฉ
    • absolute: ์š”์†Œ๋ฅผ ์ผ๋ฐ˜์ ์ธ ๋ฌธ์„œ ํ๋ฆ„์—์„œ ์ œ๊ฑฐํ•˜๊ณ , ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ์œ„์น˜ ์ง€์ • ์กฐ์ƒ ์š”์†Œ์— ๋Œ€ํ•ด ์ƒ๋Œ€์ ์œผ๋กœ ๋ฐฐ์น˜
    • fixed: ์š”์†Œ๋ฅผ ์ผ๋ฐ˜์ ์ธ ๋ฌธ์„œ ํ๋ฆ„์—์„œ ์ œ๊ฑฐํ•˜๊ณ , ๋ทฐํฌํŠธ์˜ ์ดˆ๊ธฐ ์ปจํ…Œ์ด๋‹ ๋ธ”๋ก์„ ๊ธฐ์ค€์œผ๋กœ ์‚ผ์•„ ๋ฐฐ์น˜ํ•œ๋‹ค. => ๋ฐ”๊พธ์ง€ ์•Š๋Š” ์œ„์น˜์— ์ง€์ •
    • sticky: static + fixed ํŠน์ง•์„ ๋™์‹œ์— ๊ฐ€์ง.

     

    CSS ๋ฐ•์Šค ๋ชจ๋ธ

    CSS์—์„œ "๋ฐ•์Šค ๋ชจ๋ธ"์ด๋ผ๋Š” ์šฉ์–ด๋Š” ๋””์ž์ธ๊ณผ ๋ ˆ์ด์•„์›ƒ์„ ๋งํ•  ๋•Œ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.

    CSS ์ƒ์ž ๋ชจ๋ธ์€ ๊ธฐ๋ณธ์ ์œผ๋กœ ๋ชจ๋“  HTML ์š”์†Œ๋ฅผ ๊ฐ์‹ธ๋Š” ์ƒ์ž์ž…๋‹ˆ๋‹ค. ์—ฌ๋ฐฑ, ํ…Œ๋‘๋ฆฌ, ํŒจ๋”ฉ ๋ฐ ์‹ค์ œ ์ฝ˜ํ…์ธ ๋กœ ๊ตฌ์„ฑ๋ฉ๋‹ˆ๋‹ค. ์•„๋ž˜ ์ด๋ฏธ์ง€๋Š” ์ƒ์ž ๋ชจ๋ธ์„ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค.

    ๋‹ค๋ฅธ ๋ถ€๋ถ„์— ๋Œ€ํ•œ ์„ค๋ช…:

    • ์ฝ˜ํ…์ธ  - ํ…์ŠคํŠธ์™€ ์ด๋ฏธ์ง€๊ฐ€ ํ‘œ์‹œ๋˜๋Š” ์ƒ์ž์˜ ์ฝ˜ํ…์ธ 
    • ํŒจ๋”ฉ - ์ฝ˜ํ…์ธ  ์ฃผ๋ณ€ ์˜์—ญ์„ ์ง€์›๋‹ˆ๋‹ค. ํŒจ๋”ฉ์€ ํˆฌ๋ช…ํ•ฉ๋‹ˆ๋‹ค
    • ํ…Œ๋‘๋ฆฌ - ํŒจ๋”ฉ๊ณผ ์ฝ˜ํ…์ธ ๋ฅผ ๋‘˜๋Ÿฌ์‹ธ๋Š” ํ…Œ๋‘๋ฆฌ
    • ์—ฌ๋ฐฑ - ํ…Œ๋‘๋ฆฌ ๋ฐ–์˜ ์˜์—ญ์„ ์ง€์›๋‹ˆ๋‹ค. ์—ฌ๋ฐฑ์ด ํˆฌ๋ช…ํ•˜๋‹ค

    ์ƒ์ž ๋ชจ๋ธ์„ ์‚ฌ์šฉํ•˜๋ฉด ์š”์†Œ ์ฃผ์œ„์— ํ…Œ๋‘๋ฆฌ๋ฅผ ์ถ”๊ฐ€ํ•˜๊ณ  ์š”์†Œ ์‚ฌ์ด์˜ ๊ณต๊ฐ„์„ ์ •์˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. 

     

     

     

    Flex ์†์„ฑ์„ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”.

      - Flexbox๋ž€ ๊ธฐ์กด ์ปจํ…์ธ ๋ฅผ ์ˆ˜ํ‰์œผ๋กœ ๋ฐฐ์น˜ํ•  ๋•Œ, float๋‚˜ inline-block์œผ๋กœ ๋งˆํฌ์—…ํ• ๋•Œ์˜ ๋ถˆํŽธํ•จ์„ ์‰ฝ๊ฒŒ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๋„๋ก ์ถ”๊ฐ€๋œ ๊ธฐ๋Šฅ์ด๋‹ค. ๋‹ค์–‘ํ•œ ๋””๋ฐ”์ด์Šค ํ™˜๊ฒฝ์—์„œ ์–ธ์ œ๋‚˜ ๋˜‘๊ฐ™์€ ๋ ˆ์ด์•„์›ƒ์„ ์œ ์ง€์‹œ์ผœ์คŒ์œผ๋กœ์จ ๋ฐ˜์‘ํ˜• ์›น ์‚ฌ์ดํŠธ์— ์œ ์šฉํ•˜๊ฒŒ ์“ฐ์ธ๋‹ค. Flex๋Š” ์ปจํ…์ธ ๋ฅผ ๊ฐ์‹ธ๋Š” ์ƒ์œ„ ๋ถ€๋ชจ์š”์†Œ์ธ Flex Container์™€ ๊ฐ ์ปจํ…์ธ ๋“ค์ธ ์ž์‹์š”์†Œ Flex Item์œผ๋กœ ๊ตฌ์„ฑ๋˜์–ด์žˆ๋‹ค. Flexbox css ์ ์šฉ๋ฐฉ๋ฒ•์€ ๋ถ€๋ชจ์š”์†Œ์ธ container์— display:flex๋ฅผ ์„ ์–ธํ•˜๋ฉด ๋œ๋‹ค. Flex Container์—๋Š” ์ „์ฒด์ ์ธ ์ •๋ ฌ๊ณผ ๊ด€๋ จ๋œ ์†์„ฑ์ธ display, flex-direction, align-items, flex-wrap ๊ฐ™์€ ์†์„ฑ์„ ์ •์˜ํ•˜๊ณ , ์ž์‹์š”์†Œ์ธ flex item์—๋Š” flex-grow, flex-shrink ๊ฐ™์€ ํฌ๊ธฐ๋‚˜ ์ˆœ์„œ ๊ฐ™์€ ์†์„ฑ์„ ์ •์˜ํ•œ๋‹ค.

     

     

    TDD๋ž€?

      - ํ…Œ์ŠคํŠธ ์ฃผ๋„ ๊ฐœ๋ฐœ์ด๋ผ๋Š” ๋œป์œผ๋กœ, ๋จผ์ € ํ…Œ์ŠคํŠธ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑ ํ•œ ํ›„์— ๊ตฌํ˜„์„ ํ•˜๋Š” ๋ฐฉ์‹์ด๋‹ค. ์ด 3๊ฐ€์ง€์˜ ์ ˆ์ฐจ๊ฐ€ ์žˆ๋Š”๋ฐ ์‹คํŒจ→ ์„ฑ๊ณต → ๋ฆฌํŒฉํ† ๋ง์ด ์„œ๋กœ ๊ผฌ๋ฆฌ๋ฅผ ๋ฌผ๊ณ  ์ด๋ค„์ง„๋‹ค. TDD๋ฅผ ์ง„ํ–‰ํ•˜๋ฉด ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค๋ฅผ ์ž‘์„ฑํ•  ๋•Œ ์ฃผ๋กœ ์ž‘์€ ๋‹จ์œ„๋กœ ๋งŒ๋“ค๊ธฐ ๋•Œ๋ฌธ์— ์ฝ”๋“œ๊ฐ€ ๋ฐฉ๋Œ€ํ•ด์ง€์ง€ ์•Š๊ณ , ์ฝ”๋“œ์˜ ๋ชจ๋“ˆํ™”๊ฐ€ ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ์ž˜ ์ด๋ฃจ์–ด์ง„๋‹ค. React์—์„œ ํ…Œ์ŠคํŠธ๋ฅผ ์œ„ํ•ด jest(ํ”„๋ ˆ์ž„ ์›Œํฌ)์™€ enzyme(๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ)๋“ฑ์ด ์žˆ๋‹ค. ์‹ค์ œ ํ”„๋กœ์ ํŠธ์—์„œ ์‚ฌ์šฉํ•ด๋ณธ ์ ์€ ์—†์œผ๋‚˜ ์–ธ์  ๊ฐ€๋Š” ๊ผญ ํ•ด๋ณด๊ณ  ์‹ถ๋‹ค.

     

     

    ์‹œ๋ฉ˜ํ‹ฑ ๋งˆํฌ์—…์ด๋ž€?

    ์›น ์ ‘๊ทผ์„ฑ์„ ๋†’์ด๊ธฐ ์œ„ํ•ด ์˜๋ฏธ๋ฅผ ์ž˜ ์ „๋‹ฌ ํ•  ์ˆ˜ ์žˆ๋„๋ก HTML ํƒœ๊ทธ ๋ฌธ์„œ๋ฅผ ์ž‘์„ฑํ•˜๋Š” ๊ฒƒ์„ ๋งํ•ฉ๋‹ˆ๋‹ค. 

    ์˜ˆ๋ฅผ ๋“ค์–ด, header,footer,nav,main ๋“ฑ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

     

     

    display ์†์„ฑ

    display ์†์„ฑ์€ ์›น ํŽ˜์ด์ง€์˜ ๋ ˆ์ด์•„์›ƒ(layout)์„ ๊ฒฐ์ •ํ•˜๋Š” CSS์˜ ์ค‘์š”ํ•œ ์†์„ฑ ์ค‘ ํ•˜๋‚˜์ž…๋‹ˆ๋‹ค.

    ์ด ์†์„ฑ์€ ํ•ด๋‹น HTML ์š”์†Œ๊ฐ€ ์›น ๋ธŒ๋ผ์šฐ์ €์— ์–ธ์ œ ์–ด๋–ป๊ฒŒ ๋ณด์ด๋Š”๊ฐ€๋ฅผ ๊ฒฐ์ •ํ•ฉ๋‹ˆ๋‹ค.

     

    ๋Œ€๋ถ€๋ถ„์˜ HTML ์š”์†Œ๋Š” display ์†์„ฑ์˜ ๊ธฐ๋ณธ๊ฐ’์œผ๋กœ ๋‹ค์Œ ๋‘ ๊ฐ€์ง€ ๊ฐ’ ์ค‘ ํ•˜๋‚˜์˜ ๊ฐ’์„ ๊ฐ€์ง‘๋‹ˆ๋‹ค.

     

    1. ๋ธ”๋ก(block)

    2. ์ธ๋ผ์ธ(inline)


    ๋ธ”๋ก(block)

    display ์†์„ฑ๊ฐ’์ด ๋ธ”๋ก(block)์ธ ์š”์†Œ๋Š” ์–ธ์ œ๋‚˜ ์ƒˆ๋กœ์šด ๋ผ์ธ(line)์—์„œ ์‹œ์ž‘ํ•˜๋ฉฐ, ํ•ด๋‹น ๋ผ์ธ์˜ ๋ชจ๋“  ๋„ˆ๋น„๋ฅผ ์ฐจ์ง€ํ•ฉ๋‹ˆ๋‹ค.

     

    <div>, <h1>, <p>, <ul>, <ol>, <form>์š”์†Œ๋Š” ๋Œ€ํ‘œ์ ์ธ ๋ธ”๋ก(block) ์š”์†Œ์ž…๋‹ˆ๋‹ค.

    ์ธ๋ผ์ธ(inline)

    display ์†์„ฑ๊ฐ’์ด ์ธ๋ผ์ธ(inline)์ธ ์š”์†Œ๋Š” ์ƒˆ๋กœ์šด ๋ผ์ธ(line)์—์„œ ์‹œ์ž‘ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

    ๋˜ํ•œ, ์š”์†Œ์˜ ๋„ˆ๋น„๋„ ํ•ด๋‹น ๋ผ์ธ ์ „์ฒด๊ฐ€ ์•„๋‹Œ ํ•ด๋‹น HTML ์š”์†Œ์˜ ๋‚ด์šฉ(content)๋งŒํผ๋งŒ ์ฐจ์ง€ํ•ฉ๋‹ˆ๋‹ค.

     

     

    Sass(SCSS)์˜ ๋“ฑ์žฅ

    ๋ฐ˜๋ฉด Sass(SCSS)๋Š” Syntactically Awesome StyleSheet์˜ ์•ฝ์–ด์ด๋ฉฐ ์ฝ”๋“œ์˜ ์žฌํ™œ์šฉ์„ฑ์„ ์˜ฌ๋ฆฌ๊ณ , ๊ฐ€๋…์„ฑ์„ ์˜ฌ๋ฆฌ๋Š” ๋“ฑ CSS์—์„œ ๋ณด์ด๋˜ ๋‹จ์ ์„ ๋ณด์™„ํ•˜๊ณ , ๊ฐœ๋ฐœ์˜ ํšจ์œจ์„ ์˜ฌ๋ฆฌ๊ธฐ ์œ„ํ•ด ๋“ฑ์žฅํ•œ CSS ์ „์ฒ˜๋ฆฌ๊ธฐ ์–ธ์–ด์ด๋‹ค.

    CSS๋ฅผ ํŽธ๋ฆฌํ•˜๊ฒŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๋ฉฐ ์ถ”๊ฐ€ ๊ธฐ๋Šฅ ๋˜ํ•œ ์žˆ๋Š” ํ™•์žฅํŒ ์Šคํฌ๋ฆฝํŠธ ์–ธ์–ด๋ผ๊ณ  ๋ณด๋ฉด ๋œ๋‹ค.

Designed by Tistory.