kokoa clone-3

kokoa clone-3


chats, find, More, Setting, chat Part


6.19 ~ 6.20

Chats screen

  • ํ•œ ํ™”๋ฉด์—์„œ๋งŒ ์“ฐ๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ ๋‹ค๋ฅธ ํ™”๋ฉด์—์„œ ์“ด๋‹ค๋ฉด User Component ํด๋”๋กœ ๋งŒ๋“ค์–ด ์žฌ์‚ฌ์šฉํ•˜๊ธฐ ์‰ฝ๊ฒŒ ํ•˜์ž.
  • ๋‹ค์Œ๊ณผ ๊ฐ™์ด ํด๋”๋กœ ๋ถ„๋ฆฌํ•ด์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•œ๋‹ค.
  • ํด๋”๋กœ ๋ถ„๋ฆฌ ํ›„์—๋Š” ํ•ญ์ƒ @import ํ•ด์ค„ ๊ฒƒ!

s1

6. 21 ~ 6. 24

Find screen

  • header ๋ฅผ ์žฌ์‚ฌ์šฉํ•ด์„œ ์ž‘์„ฑํ–ˆ๋‹ค.

  • ์•Œ๋ฆผ์  ๋งŒ๋“ค๊ธฐ

    • ์žฌ์‚ฌ์šฉ ๋ฐฉ๋ฒ•์„ ์ด์šฉํ•ด ํ†ฑ๋‹ˆ๋ฐ”ํ€ด ์œ„ ์ž‘์€ ์ ์„ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด badge์— badge-nonumb ๋ผ๋Š” ํด๋ž˜์Šค๋ฅผ ๋งŒ๋“ค์–ด ์—ฌ๋Ÿฌ ๊ณณ์—์„œ ์“ฐ์ผ ์ˆ˜ ์žˆ๋„๋ก ๋งŒ๋“ค์—ˆ๋‹ค. ๊ฐ€์žฅ ์ค‘์š”ํ•œ ๊ฒƒ์ด position์„ ์ž˜ ํ™œ์šฉํ•ด์•ผ ํ•˜๋Š”๋ฐ
      position: absolute์˜ ๊ฒฝ์šฐ, ์กฐ์ƒ ์ค‘์— relative๊ฐ€ ์žˆ์„ ๋•Œ ๊ทธ ์œ„์น˜๋ฅผ ๊ธฐ์ค€์œผ๋กœ ์›€์ง์ธ๋‹ค. ์•„๋‹ˆ๋ฉดbody๋ถ€ํ„ฐ ์‹œ์ž‘์„ ํ•œ๋‹ค.
      ๋”ฐ๋ผ์„œ cog์™€ ๋‚˜๋ž€ํžˆ ํ˜•์ œ ๊ด€๊ณ„์— ์œ„์น˜์‹œ์ผœ์„œ ๊ทธ ์œ„ ์กฐ์ƒ์ธ span์— relative๋ฅผ ์œ„์น˜์‹œ์ผฐ๋‹ค.
  • ๊ฐ™์€ ๋ณ€์ˆ˜๊ฐ€ ๋ฐ˜๋ณต๋  ๋•Œ๋Š” :root์—์„œ ๋™์ผ ๋ณ€์ˆ˜(variable) ๋ฅผ ์ด์šฉํ•˜์ž.
    ex) border: 1px solid rgba(0,0,0,0.2) (๊ฐ™์€ ์ฝ”๋“œ ์žฌ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ์ค„์ด๊ธฐ)

  • HTML ์ฝ”๋“œ์—์„  ๋Œ€๋ฌธ์ž๋ฅผ ๋‚˜ํƒ€๋‚ด๋ ค๊ณ  ํ•ด๋„, ์šฐ์„  ์†Œ๋ฌธ์ž๋กœ๋งŒ ์ž‘์„ฑํ•œ๋‹ค.
    ๋Œ€๋ฌธ์ž๋Š” ๋””์ž์ธ์ ์ธ ์š”์†Œ์ด๊ธฐ ๋•Œ๋ฌธ์—, CSS ํŒŒ์ผ์—์„œ ์ž‘์„ฑํ•ด์ค˜์•ผ ํ•œ๋‹ค.
    text-transform: uppercase; ๋Œ€๋ฌธ์ž๋กœ ๋งŒ๋“ค๊ธฐ.

  • ์ž์ฃผ ์“ฐ์ด๋Š” ์กฐํ•ฉ :

    .class {
      display: flex;
      justify-content: space-between;
      align-items: center;
    }
    
  • ์‚ฌ์ง„ ์œ„์— span ์˜ฌ๋ฆฌ๊ธฐ ๋“ฑ, ์ƒ๋Œ€์  ์œ„์น˜ ์ •ํ•ด์ฃผ๊ณ  ์‹ถ์„ ๋•Œ๋Š”,
    relative father & absolute child ๊ธฐ์–ตํ•˜๊ธฐ

6.25 ~ 6.26

More Screen

  • icon-rows๋ผ๋Š” ํด๋ž˜์Šค๋ฅผ ๋งŒ๋“ค์–ด์„œicon์„ ๋ชจ๋‘ ์ •๋ ฌํ•˜๊ณ  ๊ฐ™์€ ์Šคํƒ€์ผ์„ ์“ธ ์ˆ˜ ์žˆ๋„๋ก ๋งŒ๋“ค์–ด์ค€๋‹ค.

  • row๋“ค์„ ์ •๋ ฌํ•˜๋ฉด์„œ ์•„์ดํ…œ์„ ํ•˜๋‚˜์”ฉ ์ถ”๊ฐ€ํ•  ๋•Œ, ๋ฐ˜์‘ํ˜• ์›น ํŽ˜์ด์ง€ ๋‚ด์—์„œ๋„ ํ–‰์ด ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ๋ฐ”๋€Œ๊ณ  ๋˜๋Š”, ํ•œ ์ค„์— ์›ํ•˜๋Š” ์ •๋„์˜ ์š”์†Œ๋“ค์ด ์ถ”๊ฐ€๋˜๋ฉด ์ž๋™์œผ๋กœ ๋‹ค์Œ ํ–‰์œผ๋กœ ์˜ฎ๊ธฐ๋Š” ๋ฒ•์€
    flex-wrap: wrap์„ ์ด์šฉํ•œ๋‹ค.

Settings Screen

  • ๋ฌธ์ œ :
    status-bar์— position:fixed๋ฅผ ํ–ˆ๋Š”๋ฐ ์™œ ๊ฒน์ณ์„œ ๋‚˜์™”์„๊นŒ?
    position:fixed๋˜๋ฉด ์ƒ๋Œ€์„ฑ์ด ์‚ฌ๋ผ์ ธ, ๋…๋ฆฝ๋œ ๊ฐœ์ฒด๋กœ ๋ณด๊ฒŒ ๋œ๋‹ค.

  • ํ•ด๊ฒฐ : ์œ„์น˜ ์กฐ์ •์€ ์–ด๋–ป๊ฒŒ ํ•ด์•ผํ• ๊นŒ? ์ฒ˜์Œ๋ถ€ํ„ฐ ๋งž์ถฐ์•ผํ•˜๋‚˜?

    1. fake-status-bar๋ฅผ ์ค˜์„œ ์œ„์น˜๋ฅผ ๊ณ ์ •์‹œ์ผฐ๋‹ค.
    2. body์— padding top์„ ์ค€๋‹ค.
    3. position: sticky
      fixed์™€ relative์˜ ํŠน์„ฑ์„ ๋ชจ๋‘ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค. ๊ทธ๋Ÿฐ๋ฐ internet explorer ์—์„œ๋Š” ์•ˆ๋œ๋‹ค. ๊ทผ๋ฐ sticky๋ฅผ ํ•˜๋ฉด ์•ฝ๊ฐ„ ๋–จ๋ฆผ์ฆ์ƒ(?) ์ด๋Ÿฐ๊ฒŒ ์žˆ๋‹ค..


  • ๋ฌธ์ œ :
    status-bar ์™€ chat-header ๊ฐ€ ๋ชจ๋‘ fixed๋  ๋•Œ, ์œ„์น˜๊ฐ€ ๊ฒน์น˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ์ƒ๊ธด๋‹ค.
  • ์กฐ์ • ๋ฐฉ๋ฒ• : z-index ๋ฅผ ์ด์šฉํ•˜์ž. fixed or absolute position์—์„œ ์“ธ ์ˆ˜ ์žˆ๋‹ค.

6.32

  • ๋งํ’์„ ๊ณผ ์‹œ๊ฐ„ ๋ฐ•์Šค์˜ ์ˆœ์„œ๋ฅผ ๋ณ€๊ฒฝํ•˜๊ณ  ์‹ถ์„ ๋•Œ? border-top-left-radius

  • order๋Š” ์˜ค์ง flex children์—์„œ๋งŒ ์ ์šฉ๋œ๋‹ค. or flex-direction : row-revese

tip

  • ๋น ๋ฅด๊ฒŒ tag, class, child ๋งŒ๋“ค๊ธฐ
    [tag name].[classname] > (child)[tag name].[classname]
  • row์˜ ์ •๋ ฌ
    flex-wrap: wrap

  • ์‚ฌ์ง„ ์œ„ span ์˜ฌ๋ฆฌ๊ธฐ
    relative father & absolute child

  • ์ •๋ ฌ ์กฐํ•ฉ
      .class {
          display: flex;
          justify-content: space-between;
          align-items: center;
      }
    

ํƒœ๊ทธ: , ,

์นดํ…Œ๊ณ ๋ฆฌ:

์—…๋ฐ์ดํŠธ: