Daily/Today I Learned

22.07.21_TIL

ν˜Έλ°€μ΄ 2022. 7. 21. 09:53

πŸ“Œ λ‚΄κ°€ 제일 λ…Έλ ₯을 ν•΄μ•Όν•˜λŠ” 뢀뢄인 CSS λ””μžμΈ 뢀뢄에 λŒ€ν•΄μ„œ ν•™μŠ΅μ„ ν•˜λŠ” μ‹œκ°„μ„ 였늘 포함 이틀을 μ€€λ‹€κ³  ν•œλ‹€. μ΄λ•Œ λ”μš± μ‹€λ ₯을 ν–₯μƒμ‹œμΌœ κ΅¬ν˜„λ§Œ κ°€λŠ₯ν•œ ν”„λ‘ νŠΈμ—”λ“œ κ°œλ°œμžκ°€ μ•„λ‹Œ λ””μžμΈλ„ 같이 κ²ΈλΉ„ν•  수 μžˆλŠ” κ°œλ°œμžκ°€ 될 수 μžˆλ„λ‘ λ…Έλ ₯ν•΄μ•Όκ² λ‹€.

πŸ“— 였늘 ν•™μŠ΅ν•œ λ‚΄μš©

λΈŒλΌμš°μ €

  • ν”„λ‘ νŠΈμ—”λ“œ κ°œλ°œμžλŠ” λΈŒλΌμš°μ €μ˜ λ™μž‘κ³Όμ •μ— λŒ€ν•΄ μ•„λŠ” 것이 μ€‘μš”ν•˜λ‹€.
  • μž‘μ„±ν•œ μ½”λ“œκ°€ λΈŒλΌμš°μ €μ˜ μ†Œν”„νŠΈμ›¨μ–΄ ν”„λ‘œκ·Έλž¨ μƒμ—μ„œ μˆ˜ν–‰λ˜κΈ° λ•Œλ¬Έμ΄λ‹€.

μ›Ή(Web) = μ›”λ“œ μ™€μ΄λ“œ μ›Ή(World Wide Web)

  • 인터넷 μƒμ—μ„œ ν…μŠ€νŠΈλ‚˜ κ·Έλ¦Ό, μ†Œλ¦¬ λ“±κ³Ό 같은 λ©€ν‹°λ―Έλ””μ–΄ 정보λ₯Ό ν•˜μ΄νΌν…μŠ€νŠΈ(hypertext) λ°©μ‹μœΌλ‘œ μ—°κ²°ν•΄ μ œκ³΅ν•œλ‹€.

μ›Ή νŽ˜μ΄μ§€

  • HTML μ–Έμ–΄λ₯Ό μ‚¬μš©ν•˜μ—¬ μž‘μ„±λœ λ¬Έμ„œ ν˜•νƒœ

μ›Ή μ‚¬μ΄νŠΈ

  • μ›Ή νŽ˜μ΄μ§€ 쀑 μ„œλ‘œ κ΄€λ ¨λœ λ‚΄μš©μœΌλ‘œ μž‘μ„±λœ μ›Ή νŽ˜μ΄μ§€λ“€μ˜ 집합

λΈŒλΌμš°μ €μ˜ λ™μž‘ 방식

  • μ‚¬μš©μžκ°€ μ„ νƒν•œ μžμ›μ„ μ„œλ²„μ— μš”μ²­ν•˜κ³ , μ„œλ²„μ˜ 응닡을 λΈŒλΌμš°μ €μ— λ Œλ”λ§ ν•˜λŠ” λ°©μ‹μœΌλ‘œ λ™μž‘ν•œλ‹€.

μ‚¬μš©μžκ°€ URL μ£Όμ†Œλ₯Ό μž…λ ₯

→ DNS μ„œλ²„μ—μ„œ μ‚¬μš©μžκ°€ μž…λ ₯ν•œ URL μ£Όμ†Œ 쀑 도메인 λ„€μž„μ„ 검색

→ ν•΄λ‹Ή IP μ£Όμ†Œλ₯Ό μ°Ύμ•„ μ‚¬μš©μžκ°€ μž…λ ₯ν•œ URL 정보와 ν•¨κ»˜ 전달

→  전달받은 IP μ£Όμ†ŒλŠ” HTTP ν”„λ‘œν† μ½œμ„ μ‚¬μš©ν•΄ HTTP μš”μ²­ λ©”μ‹œμ§€ 생성 TCP ν”„λ‘œν† μ½œμ„ μ‚¬μš©ν•΄ 인터넷을 거쳐 ν•΄λ‹Ή IP μ»΄ν“¨ν„°λ‘œ 전솑

→  μš”μ²­ λ©”μ‹œμ§€λ₯Ό λ‹€μ‹œ HTTP ν”„λ‘œν† μ½œμ„ 톡해 μ›Ή νŽ˜μ΄μ§€ URL μ •λ³΄λ‘œ λ³€ν™˜

→ μ›Ή μ„œλ²„μ—μ„œ 응닡 메세지 생성

→ TCP ν”„λ‘œν† μ½œμ„ μ΄μš©ν•΄ 인터넷을 겨처 μ‚¬μš©μžμ˜ μ»΄ν“¨ν„°λ‘œ μ „μ†‘λœλ‹€.

λΈŒλΌμš°μ €μ˜ ꡬ쑰

  • μ‚¬μš©μž μΈν„°νŽ˜μ΄μŠ€(User Interface)
  • λΈŒλΌμš°μ € 엔진(Browser Engine)
    • μ‚¬μš©μž μΈν„°νŽ˜μ΄μŠ€μ™€ λ Œλ”λ§ 엔진 μ‚¬μ΄μ˜ λ™μž‘μ„ μ œμ–΄ν•œλ‹€.
    • HTML λ¬Έμ„œμ™€ 기타 μžμ›μ˜ μ›Ή νŽ˜μ΄μ§€λ₯Ό μ‚¬μš©μžμ˜ μž₯μΉ˜μ— μ‹œκ° ν‘œν˜„μœΌλ‘œ λ³€ν™˜μ‹œν‚€λ©°, λ¬Έμ„œ 객체 λͺ¨λΈ(DOM) 자료 ꡬ쑰λ₯Ό κ΅¬ν˜„
  • λ Œλ”λ§ 엔진(Rendering Engine)
    • μš”μ²­ν•œ μ½˜ν…μΈ λ₯Ό 화면에 좜λ ₯ν•˜λŠ” μ—­ν• 
    • HTML 및 XML λ¬Έμ„œμ™€ 이미지λ₯Ό ν‘œμ‹œν•  수 μžˆλ‹€.
  • 톡신(Networking)
    • HTTP μš”μ²­κ³Ό 같은 λ„€νŠΈμ›Œν¬ ν˜ΈμΆœμ— μ‚¬μš©
    • 보톡 ν”Œλž«νΌμ˜ 독립적인 μΈν„°νŽ˜μ΄μŠ€, 각 ν”Œλž«νΌμ˜ ν•˜λΆ€μ—μ„œ μ‹€ν–‰
  • μžλ°”μŠ€ν¬λ¦½νŠΈ 해석기(JavaScript Interpreter)
    • μ½”λ“œλ₯Ό μœ„μ—μ„œ μ•„λž˜λ‘œ ν•œ 쀄씩 μ½μ–΄λ‚΄λ €κ°€λŠ” λ°©μ‹μœΌλ‘œ νŒŒμ‹±ν•˜λŠ” μ½”λ“œλ₯Ό ν•΄μ„ν•˜κ³  μ‹€ν–‰ν•˜λŠ” 것
    • μ—¬λŸ¬ λͺ©μ μœΌλ‘œ μ‚¬μš©μ΄ λ˜μ§€λ§Œ λŒ€μ²΄μ μœΌλ‘œ μ›Ή λΈŒλΌμš°μ €μ—μ„œ 이용이 되며, λΈŒλΌμš°μ €λ§ˆλ‹€ μ „μš© 엔진 νƒ‘μ œ
  • νž™ λ©”λͺ¨λ¦¬(Heap Memory)
    • νž™: 동적 λ©”λͺ¨λ¦¬ 할당에 μ‚¬μš©λ˜λŠ” 자료ꡬ쑰
    • V8: 객체 λ˜λŠ” 동적 데이터λ₯Ό μ €μž₯
    • 엔진 λ‚΄λΆ€μ—μ„œ κ°€μž₯ 큰 λ©”λͺ¨λ¦¬ 곡간을 μ°¨μ§€ν•˜κ³  μžˆλ‹€.
    • 가비지 μ»¬λ ‰μ…˜μ΄ λ°œμƒν•˜λŠ” κ³³
  • 콜 μŠ€νƒ(Call Stack)
    • ν•œ λ²ˆμ— ν•œ μž‘μ—…λ§Œ μ‚¬μš©ν•  수 μžˆλ‹€.
    • ν”„λ‘œκ·Έλž¨ μƒμ—μ„œ μš°λ¦¬κ°€ 어디에 μžˆλŠ”μ§€ κΈ°λ‘ν•˜λŠ” 자료ꡬ쑰
    • ν•¨μˆ˜λ₯Ό μ‹€ν–‰ν•œλ‹€λ©΄ ν•΄λ‹Ή ν•¨μˆ˜λŠ” 콜 μŠ€νƒμ˜ κ°€μž₯ 상단에 μœ„μΉ˜ν•œλ‹€.
  • μŠ€νƒ μ˜€λ²„ν”Œλ‘œ(Stack Overflow)
    • 콜 μŠ€νƒ λ‚΄λΆ€μ˜ λ™μΌν•œ μŠ€νƒ ν”„λ ˆμž„μ΄ μ˜ˆμƒμΉ˜ λͺ»ν•œ 수둜 μŒ“μΌ λ•Œ λ°œμƒ
  • μŠ€νƒ 좔적(Stack trace)
    • λΈŒλΌμš°μ €μ˜ μ½˜μ†” 둜그λ₯Ό μ‚΄νŽ΄λ³΄λ©° μ—λŸ¬μ˜ λ°œμƒ 이유λ₯Ό 좔적해낼 수 μžˆλ‹€.

자료 μ €μž₯μ†Œ

  • 자료λ₯Ό μ €μž₯ν•˜λŠ” 계측
  • μ›Ή μŠ€ν† λ¦¬μ§€(Web Storage) νŠΉμ§•
    • μΏ ν‚€μ˜ λ³΄μ•ˆμƒ μ·¨μ•½κ³Ό μ €μž₯μ†Œμ˜ μ ˆλŒ€μ μΈ ν—ˆμš© μš©λŸ‰μ΄ μ μ–΄μ„œ 찾은 λŒ€μ•ˆ λ°©μ•ˆ
    • originλ§ˆλ‹€ 단 ν•˜λ‚˜μ”©λ§Œ 쑴재
    • origin
      • domainκ³Ό protocol ν•œ μ‹ΌμœΌλ‘œ 이루어진 μ‹λ³„μž
      • ν•˜λ‚˜μ˜ origin에 μ†ν•˜λŠ” λͺ¨λ“  μ›Ή νŽ˜μ΄μ§€λŠ” 같은 데이터λ₯Ό μ €μž₯ν•˜κΈ° λ•Œλ¬Έμ— 같은 데이터에 μ ‘κ·Όν•  수 μžˆλ‹€.

μ›Ή μŠ€ν† λ¦¬μ§€ μ’…λ₯˜

  • λ‘œμ»¬μŠ€ν† λ¦¬μ§€(localStorage)
    • 보관 κΈ°ν•œμ΄ μ—†λŠ” 데이터λ₯Ό μ €μž₯(객체)
    • λΈŒλΌμš°μ € 탭이 λ‹«νžˆκ±°λ‚˜, 컴퓨터λ₯Ό μž¬λΆ€νŒ…ν•΄λ„ 이 μ €μž₯μ†Œμ— μ €μž₯된 λ°μ΄ν„°λŠ” 사라지지 μ•ŠλŠ”λ‹€.
  • μ„Έμ…˜μŠ€ν† λ¦¬μ§€(sessionStorage)
    • ν•˜λ‚˜μ˜ μ„Έμ…˜λ§Œμ„ μœ„ν•œ 데이터λ₯Ό μ €μž₯(객체)
    • 데이터λ₯Ό μ§€μ†μ μœΌλ‘œ λ³΄κ΄€ν•˜μ§€ μ•Šκ³  λΈŒλΌμš°μ§•λ˜κ³  μžˆλŠ” λΈŒλΌμš°μ € μ»¨ν…κΈ‹νŠΈ λ‚΄μ—μ„œλ§Œ μœ μ§€
    • λΈŒλΌμš°μ € 탭이 λ‹«νžˆκ±°λ‚˜ 창을 λ‹«μœΌλ©΄ μ„Έμ…˜ μ €μž₯μ†Œμ— μ €μž₯된 데이터가 사라진닀.

μ›Ή μŠ€ν† λ¦¬μ§€λ₯Ό ν™œμš©ν•œ λŒ€ν‘œμ μΈ κΈ°λŠ₯

  • 볡ꡬ 및 백업에 κ΄€λ ¨λœ κΈ°λŠ₯에 주둜 μ‚¬μš©
  • λΈ”λ‘œκ·Έ 글을 μž‘μ„± 쀑 μ‚¬μš©μžκ°€ 창을 λ²—μ–΄λ‚œ 경우 κ΄€λ ¨ μž‘μ„± λ‚΄μš©μ„ λ³΅κ΅¬ν•˜κ±°λ‚˜ λ°±μ—…ν•΄μ£ΌλŠ” κΈ°λŠ₯
  • μ‚¬μš©μžκ°€ μž…λ ₯ form을 톡해 정보λ₯Ό μž…λ ₯ν•˜λ‹€ νŽ˜μ΄μ§€μ—μ„œ λ²—μ–΄λ‚œ 경우 볡ꡬ 및 λ°±μ—…ν•΄μ£ΌλŠ” κΈ°λŠ₯
  • ν˜„μž¬ 읽은 κΈ€μ˜ νžˆμŠ€ν† λ¦¬ μ €μž₯

λΈŒλΌμš°μ € λ Œλ”λ§ κ³Όμ •

  1. μ‚¬μš©μžκ°€ λΈŒλΌμš°μ €λ₯Ό 톡해 μ›Ή μ‚¬μ΄νŠΈμ— 접속
  2. λΈŒλΌμš°μ €λŠ” μ„œλ²„λ‘œλΆ€ν„° HTML, CSS, JavaScript와 같은 μ›Ή μ‚¬μ΄νŠΈμ— ν•„μš”ν•œ λ¦¬μ†ŒμŠ€ λ‹€μš΄
  3. λ Œλ”λ§ 엔진은 전달받은 HTML λ¬Έμ„œλ₯Ό νŒŒμ‹±ν•΄ DOM 트리λ₯Ό λ§Œλ“ λ‹€.
  4. μ΄μ–΄μ„œ λ‹€μš΄ 받은 μ™ΈλΆ€ CSS 파일과 ν•¨κ»˜ ν¬ν•¨λœ μŠ€νƒ€μΌ μš”μ†Œλ₯Ό νŒŒμ‹±ν•΄ CSSOM(CSS Object Model, CSS 객체 λͺ¨λΈ) 트리λ₯Ό λ§Œλ“ λ‹€.
  5. λ§Œλ“  DOM νŠΈλ¦¬μ™€ CSSOM 트리λ₯Ό κ²°ν•©ν•΄ Render 트리λ₯Ό κ΅¬μΆ•ν•œλ‹€.
  6. λ ˆμ΄μ•„μ›ƒ 과정을 톡해 각 μš”μ†Œλ₯Ό 어디에 λ°°μΉ˜ν•  지 κ²°μ •ν•œλ‹€.
  7. λ ˆμ΄μ•„μ›ƒ 과정이 λλ‚˜λ©΄ UI λ°±μ—”λ“œ Render 트리λ₯Ό 화면에 그리기 μ‹œμž‘ν•œλ‹€.

νŒŒμ‹±(Parsing)

  • ν”„λ‘œκ·Έλž˜λ° μ–Έμ–΄λ‘œ μž‘μ„±λœ νŒŒμΌμ„ μ‹€ν–‰μ‹œν‚€κΈ° μœ„ν•΄ ꡬ문 뢄석을 ν•˜λŠ” 단계

DOM Tree

  • HTML λ¬Έμ„œμ˜ μš”μ†Œλ“€μ˜ 쀑첩 관계λ₯Ό 기반으둜 λ…Έλ“œλ“€μ„ 트리 ꡬ쑰둜 κ΅¬μ„±ν•œ 것

CSSOM Tree

  • html νŒŒμΌμ„ DOM 트리둜 νŒŒμ‹±ν•˜λ˜ λΈŒλΌμš°μ €λŠ” link, style νƒœκ·Έλ₯Ό λ§Œλ‚˜ νŒŒμ‹±μ„ λ©ˆμΆ”κ³  ν•΄λ‹Ή λ¦¬μ†ŒμŠ€ νŒŒμΌμ„ μ„œλ²„λ‘œ μš”μ²­ν•œλ‹€. μ΄λ ‡κ²Œ μš”μ²­ν•œ νŒŒμΌμ„ html 파일처럼 νŒŒμ‹±μ„ ν•˜λŠ”λ°, νŒŒμΌμ„ νŒŒμ‹±ν•΄ λ§Œλ“  트리λ₯Ό λ§ν•œλ‹€.

λ Œλ” 트리(Render Tree)

  • λ Œλ”λ§μ„ λͺ©μ μœΌλ‘œ λ§Œλ“€μ–΄μ§€λŠ” 트리
  • μ‚¬μš©μžμ—κ²Œ λΈŒλΌμš°μ €κ°€ λ³΄μ—¬μ£Όκ³ μž ν•˜λŠ” 화면을 κ·Έλ¦¬λŠ” κ³Όμ •

λ ˆμ΄μ•„μ›ƒ

  • λ Œλ”νŠΈλ¦¬λ₯Ό 기반으둜 HTML μš”μ†Œμ˜ λ ˆμ΄μ•„μ›ƒμ„ κ³„μ‚°ν•˜μ—¬ λΈŒλΌμš°μ € ν™”λ©΄ 어디에 λ°°μΉ˜ν•  지 κ²°μ •ν•˜λŠ” κ³Όμ •

νŽ˜μΈνŒ…

  • 픽셀에 λŒ€ν•œ 정보듀을 λ°”νƒ•μœΌλ‘œ 픽셀을 μ±„μ›Œλ‚˜κ°€λŠ” κ³Όμ •

λ°˜μ‘ν˜• μ›Ή

  • μ—¬λŸ¬ μž₯치의 λ‹€μ–‘ν•œ νŠΉμ„±μ— λŒ€μ‘ν•˜λŠ” ν•˜λ‚˜μ˜ μ›Ή λ¬Έμ„œ λ˜λŠ” μ‚¬μ΄νŠΈλ‘œμ¨ λΈŒλΌμš°μ €μ˜ 크기(슀크린의 크기, λ””λ°”μ΄μŠ€μ˜ μ’…λ₯˜)에 μ‹€μ‹œκ°„μœΌλ‘œ λ°˜μ‘ν•˜μ—¬ 크기에 따라 λ ˆμ΄μ•„μ›ƒμ΄ λ³€ν•˜λŠ” μ›Ή μ‚¬μ΄νŠΈλ₯Ό μ˜λ―Έν•œλ‹€.
  • ν•˜λ‚˜μ˜ μ†ŒμŠ€ν¬λ“œλ‘œ λͺ¨λ“  μŠ€ν¬λ¦°μ— μ΅œμ ν™”λœ μ›Ή μ‚¬μ΄νŠΈλ₯Ό ꡬ좕할 수 μžˆλŠ” 방법둠이며 λ””λ°”μ΄μŠ€ μ’…λ₯˜μ— 따라 μ›Ή νŽ˜μ΄μ§€μ˜ ν¬κΈ°κ°€μžλ™μ μœΌλ‘œ μ‘°μ • λœλ‹€.

λ°˜μ‘ν˜• μ›Ήμ˜ νŠΉμ§•

  • μž₯점
    • 효율적인 μœ μ§€λ³΄μˆ˜
      • ν•˜λ‚˜μ˜ μ½˜ν…μΈ μ— 였직 ν•˜λ‚˜μ˜ HTML μ†ŒμŠ€λ§Œ 있기 λ•Œλ¬Έμ— ν•˜λ‚˜μ˜ μ†ŒμŠ€λ₯Ό μˆ˜μ •ν•˜λ©΄ λͺ¨λ“  슀크린 μ‚¬μ΄μ¦ˆμ— 맞좰 μ½˜ν…μΈ κ°€ μ΅œμ ν™”λ˜κΈ° λ•Œλ¬Έμ΄λ‹€.
    • 검색엔진(SEO) μ΅œμ ν™” 유리
      • 검색 κ²°κ³Όμ—μ„œ μƒμœ„κΆŒμ— λ‚˜νƒ€λ‚˜κ²Œ ν•  수 μžˆλ‹€.
  • 단점
    • μ‚¬μ΄νŠΈμ˜ 속도 μ €ν•˜
      • λͺ¨λ°”일 ν™˜κ²½μ—μ„œ μ μ‘ν•˜κ²Œ λ§Œλ“€μ–΄μ§„ λ°˜μ‘ν˜• 웹은 λͺ¨λ°”일 μ „μš©μœΌλ‘œ ν•˜λŠ” μ‚¬μ΄νŠΈμ— λΉ„ν•΄ 무겁닀.
      • 읽어듀여야 ν•  μ†ŒμŠ€κ°€ λ§Žμ•„ λΆˆν•„μš”ν•˜κ²Œ λ§Žμ€ 데이터λ₯Ό μ†ŒλΉ„ν•˜κΈ° λ•Œλ¬Έμ΄λ‹€.
    • μ›Ή λΈŒλΌμš°μ € ν˜Έν™˜μ„± 문제
      • μ‘΄μž¬ν•˜λŠ” μ›Ή λΈŒλΌμš°μ €λŠ” μŠ€νŽ™ 및 사양이 λ‹€λ₯΄κΈ° λ•Œλ¬Έμ— ν•˜λ‚˜μ˜ μ›Ή λΈŒλΌμš°μ €μ—μ„œλŠ” 잘 λ°˜μ‘ν•˜λ˜ μ½”λ“œκ°€ λ‹€λ₯Έ μ›Ή λΈŒλΌμš°μ €μ—μ„œλŠ” λ””μžμΈμ΄ κΉ¨μ§€λŠ” κ²½μš°κ°€ λ°œμƒν•  수 있기 λ•Œλ¬Έμ΄λ‹€.

λ―Έλ””μ–΄ 쿼리

  • λ°˜μ‘ν˜• μ›Ή λ””μžμΈμ˜ 핡심 뢀뢄이닀.
  • λΈŒλŸ¬μš°μ € 창의 크기에 따라 μ„œλ‘œ λ‹€λ₯Έ μ‘°νŒμ„ 생성할 수 있기 λ•Œλ¬Έμ΄λ‹€.

λ―Έλ””μ–΄ 쿼리 μ μš©λ²•

  • headνƒœκ·Έ μ•ˆμ— linkλ₯Ό μœ„μΉ˜ μ‹œν‚€λŠ” 방법
    • λ―Έλ””μ–΄ 속성을 μ‚¬μš©ν•˜μ—¬ 쑰건을 μ§€μ •ν•˜μ—¬ λ―Έλ””μ–΄ 속성 λ‚΄ ν•΄λ‹Ή 쑰건을 λ§Œμ‘±ν•  λ•Œμ—λ§Œ ν•΄λ‹Ή CSS νŒŒμΌμ„ 뢈러였게 ν•œλ‹€.
<link href="cssνŒŒμΌμ΄λ¦„.css" media="screen and (min-width: 400px) and (max-width: 1000px)" rel="stylesheet">
  • CSS 파일, νƒœκ·Έ μ•ˆμ—μ„œ 직접 λ―Έλ””μ–΄ 쿼리 μž‘μ„±ν•˜λŠ” 방법

λ―Έλ””μ–΄ 쿼리 μž‘μ„± ꡬ문

  • λ―Έλ””μ–΄ νƒ€μž…: μ½”λ“œκ°€ μ–΄λ–€ λ―Έλ””μ–΄λ₯Ό μœ„ν•œ 것인지 μž‘μ„±ν•œλ‹€.
    • all: λͺ¨λ“  λ―Έλ””μ–΄ νƒ€μž…
    • print: ν”„λ¦°ν„°
    • screen: 컴퓨터 ν™”λ©΄
    • speech: 슀크린 리더
    • andλ₯Ό μ‚¬μš©ν•΄ λ―Έλ””μ–΄ κΈ°λŠ₯을 ν•©μΉ  수 μžˆλ‹€.
    • ,(콀마)λ₯Ό μ‚¬μš©ν•΄ or μ—°μ‚°μ΄λ˜λ©° 쑰건 쀑 ν•˜λ‚˜λΌλ„ λ§Œμ‘±ν•  λ•Œ μŠ€νƒ€μΌμ΄ μ μš©λ˜λ„λ‘ ν•œλ‹€.
    • not μ—°μ‚°μžλ₯Ό μ‚¬μš©ν•΄ λ―Έλ””μ–΄ 쿼리의 쑰건을 λ°˜λŒ€λ‘œ ν•  수 μžˆλ‹€.
  • 쑰건: μ§€μ •ν•œ 창의 λ„ˆλΉ„λ‚˜ 높이λ₯Ό 기쀀이 만쑱되면 μŠ€νƒ€μΌμ΄ μ μš©λ˜λ„λ‘ ν•œλ‹€.
    • λ°©ν–₯μ„±: μ„Έλ‘œ λͺ¨λ“œμ™€ κ°€λ‘œ λͺ¨λ“œλ₯Ό κ²€μ‚¬ν•˜λŠ” λ°©λ²•μœΌλ‘œ 쑰건에 prientation: landscapeλ₯Ό μž‘μ„±ν•œλ‹€.
  • CSS μž…λ ₯: 쑰건문을 ν†΅κ³Όν•œ ν›„ μž‘μ„±λœ CSS μŠ€νƒ€μΌμ΄ μ μš©λ˜λŠ” 뢀뢄이닀.
@media λ―Έλ””μ–΄ νƒ€μž… (쑰건(λ„ˆλΉ„ 및 높이)){
    (CSS μž…λ ₯ν•˜λŠ” λΆ€λΆ„)
}

@media screen (max-width: 400px){
    body{
            color: red;
        }
}

@media (orientation: landscape){
    body{
            color: red;
        }
}

@media screen and (max-width: 400px) and (orientation: landscape){
    body{
            color: red;
        }
}

@media screen and (max-width: 400px), (orientation: landscape){
    body{
            color: red;
        }
}

@media not all and (orientation: landscape){
    body{
            color: red;
        }
}

λ°˜μ‘ν˜• μ›Ή κ΅¬ν˜„ (미디어쿼리)

πŸ“˜ μΆ”κ°€λ‘œ 곡뢀할 λ‚΄μš©

[udemy] React μ™„λ²½ κ°€μ΄λ“œ κ°•μ˜ 보기 (맀일 μ‘°κΈˆμ”© 이라도 κΎΈμ€€νžˆ λ“£κΈ°)

Study원과 ν•¨κ»˜ 진행쀑인 ν”„λ‘œμ νŠΈ κ΅¬ν˜„

πŸ“ μ€‘μš”ν•œ λ‚΄μš©

  • μ›Ή μŠ€ν† λ¦¬μ§€μ˜ μ’…λ₯˜
    • localstorage
    • sessionstorage
  • λ°˜μ‘ν˜•μ›Ή
  • λ―Έλ””μ–΄ 쿼리 μ‚¬μš©λ°©λ²•

'Daily > Today I Learned' μΉ΄ν…Œκ³ λ¦¬μ˜ λ‹€λ₯Έ κΈ€

22.07.25_TIL  (0) 2022.07.25
22.07.22_TIL  (0) 2022.07.22
22.07.19_TIL  (0) 2022.07.19
22.07.18_TIL  (0) 2022.07.18
22.07.15_TIL  (0) 2022.07.15