TIL - CSS

μ†Œλ°Β·2022λ…„ 4μ›” 5일
0

TIL

λͺ©λ‘ 보기
8/17
post-thumbnail

πŸ“Œ CSS 의 기본ꡬ쑰

selector{
	property : value;
    }
    /* 속성 : κ°’ -> declaration */
  • selector μ„ νƒμž
  • property 속성
  • value κ°’
  • declaration μ„ μ–Έ 블둝

πŸ“Œ Selector

1. 전체 μ„ νƒμž

  • * λ¬Έμ„œμ— μžˆλŠ” λͺ¨λ“  μš”μ†Œμ— λŒ€ν•΄ μŠ€νƒ€μΌ 적용

2. νƒ€μž… μ„ νƒμž

  • νƒœκ·Έ 이름 μ‚¬μš©, ν•΄λ‹Ήν•˜λŠ” λͺ¨λ“  νƒœκ·Έμ— 속성 적용

3. 아이디 μ„ νƒμž

  • νŽ˜μ΄μ§€μ— μžˆλŠ” ν•΄λ‹Ή μš”μ†Œλ₯Ό μœ μΌν•˜κ²Œ 식별할 λ•Œ μ‚¬μš©
  • HTML μ•ˆμ— 단 ν•œ 개 μ‘΄μž¬ν•΄μ•Όν•¨ .
  • idλŠ” μ•ŒνŒŒλ²³, _(언더바) , -(ν•˜μ΄ν”ˆ) 둜 μ‹œμž‘ν•˜λ„λ‘!
  • 해쉬링크 λ§Œλ“€ 수 있음 !

4. 클래슀 μ„ νƒμž

  • μš”μ†Œ 식별할 λ•Œ μ‚¬μš©, μ—¬λŸ¬κ°œ 쑴재 κ°€λŠ₯

5. μ„ νƒμž λͺ©λ‘

  • 콀마둜 μ„ νƒμž μ—°κ²°ν•˜μ—¬ μΌμΉ˜ν•˜λŠ” λͺ¨λ“  μš”μ†Œ 선택
h1 {color: red;}
h2 {color: red;}
h3 {color: red;}
h4 {color: red;}
h5 {color: red;}
h6 {color: red;}

h1, h2, h3, h4, h5, h6 {color: red;}
/*μ„ νƒμž λͺ©λ‘μ„ μ΄μš©ν•˜μ—¬ 효율적으둜 μž‘μ„±*/

πŸ“Œ μ„ νƒμž μš°μ„ μˆœμœ„

1. ν›„μž μš°μ„ μ˜ 원칙

  • λ™μΌν•œ μ„ νƒμž μ‚¬μš©λ˜μ—ˆμ„ 경우 ν›„μžκ°€ μš°μ„  적용
<style>
	p {color: red;
       font-size: 20px;}
      
    p {color: green;}
    /* ν›„μž color : green 적용 */
</style>

2. κ΅¬μ²΄μ„±μ˜ 원칙

  • 같은 νƒœκ·Έλ₯Ό κ°€λ₯΄ν‚€κ³  μžˆλ”λΌλ„ 보닀 ꡬ체적인 μ„ νƒμž μš°μ„  적용
<style>
        p.color-red {
            color: red;
            font-size: 20px;
        }
        /* 더 ꡬ체적인 μ„ νƒμž, color : red; 적용*/

        p { color: green;
        }
</style>

  • κ°€μ€‘μΉ˜ κΈ°μ€€μœΌλ‘œ νŒλ‹¨
    • inline-style : μš”μ†Œμ˜ μ•ˆμ— μ†μ„±μœΌλ‘œ μ„ μ–Έλ˜λŠ” μŠ€νƒ€μΌ, 1000 점
    • id μ„ νƒμž : 100점
    • class, κ°€μƒν΄λž˜μŠ€, 속성 μ„ νƒμž : 10점
    • νƒ€μž…, κ°€μƒμš”μ†Œ μ„ νƒμž : 1점
    • μ „μ²΄μ„ νƒμž(Universal Selector) : 0점

3. μ€‘μš”μ„±μ˜ 원칙

  • !important
    μ ˆλŒ€μ μΈ μš°μ„ μˆœμœ„, μš°μ„  μˆœμœ„ 계산 μ–΄λ €μ›Œμ§€λ―€λ‘œ μ‚¬μš©ν•˜λŠ” 것을 지양

πŸ“Œ css 적용 방법

  1. 인라인 방식 : νƒœκ·Έμ— 직접 적용
  2. λ‚΄λΆ€ μŠ€νƒ€μΌ μ‹œνŠΈ : html 파일 내에 직접
  3. μ™ΈλΆ€ μŠ€νƒ€μΌ μ‹œνŠΈ : html μ™ΈλΆ€ css 파일과 μ—°κ²°
  4. 닀쀑 μŠ€νƒ€μΌ μ‹œνŠΈ : css 파일 μ•ˆμ— css ν¬ν•¨ν•˜κΈ°

🧷 닀쀑 μŠ€νƒ€μΌ μ‹œνŠΈ

@import "foo.css";

@κ°€ λΆ™λŠ” 문법 at-rule

  • @charset : μŠ€νƒ€μΌμ‹œνŠΈμ—μ„œ μ‚¬μš©ν•˜λŠ” 문자 인코딩 지정. λ¬Έμ„œμ—μ„œ κ°€μž₯ λ¨Όμ € μ„ μ–Έ.
  • @import : λ‹€λ₯Έ μŠ€νƒ€μΌ μ‹œνŠΈμ—μ„œ μŠ€νƒ€μΌ κ·œμΉ™μ„ κ°€μ Έμ˜΄. @charset λ°”λ‘œ λ‹€μŒμ— μ„ μ–Έλ˜μ–΄μ•Όν•¨.
  • @font-face : λ””λ°”μ΄μŠ€μ— μ—†λŠ” 폰트λ₯Ό λ‹€μš΄λ°›μ•„ μ μš©ν•  λ•Œ μ‚¬μš©.
  • @keyframes : μ• λ‹ˆλ©”μ΄μ…˜μ„ λ§Œλ“€ λ•Œ μ‚¬μš©.
  • @media : μ‚¬μš©μž λ””λ°”μ΄μŠ€μ— λ”°λ₯Έ μŠ€νƒ€μΌμ„ λΆ„κΈ° μ²˜λ¦¬ν•˜κ³ μž ν•  λ•Œ μ‚¬μš©.
  • @supports : νŠΉμ • CSS 속성을 λΈŒλΌμš°μ €κ°€ μ§€μ›ν•˜λŠ”μ§€ ν™•μΈν•˜κ³  μŠ€νƒ€μΌμ„ μ„ μ–Έν•˜κ³ μž ν•  λ•Œ μ‚¬μš©.
<!DOCTYPE html>
<html lang="ko">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>hello</title>
    <style type="text/css">
      /* 
      μ•„λž˜μ™€ 같이 μ—¬λŸ¬κ°€μ§€λ‘œ μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€. 
      @import url("hello.css");
      @import url(hello.css);
      @import url("./hello.css");
      @import "hello.css"; // @import hello.css;λŠ” μ•ˆλ©λ‹ˆλ‹€.
    */
      @import "hello.css";
    </style>
  </head>
  <body>
    <h1>hello world</h1>
  </body>
</html>
profile
생각이 κΈΈλ©΄ μš©κΈ°λŠ” 사라진닀.

0개의 λŒ“κΈ€