CSS

μŠ€νƒ€μΌ νƒœκ·Έ μœ„μΉ˜

<head> νƒœκ·Έμ— μœ„μΉ˜ μ‹œμΌœμ•Ό ν•œλ‹€.

ν•˜λ‹¨μ— μœ„μΉ˜ μ‹œν‚€κ²Œ 되면 HTML νŒŒμΌμ„ 두 번 μ½μ–΄μ„œ 적용 μ‹œν‚€κΈ° λ•Œλ¬Έ

Selector

  • ν•˜μœ„ μ‘°ν•©μž (Descendant Combinator)

λ¨Όμ € μ§€μ •ν•œ μ„ νƒμžμ˜ μžμ‹ μš”μ†Œκ°€ λ’€μ—μ˜€λŠ” μ„ νƒμžμΈ 경우 μžμ‹μš”μ†Œλ“€μ„ 선택 ν•©λ‹ˆλ‹€.
각각의 μ„ νƒμžλ₯Ό 곡백으둜 κ΅¬λΆ„ν•œλ‹€.

h1 em {
    ...
}
  • μžμ‹ μ‘°ν•©μž (Child Combinator)

λ¨Όμ € μ§€μ •ν•œ μ„ νƒμžμ˜ μžμ‹ μš”μ†Œκ°€ 뒀에 μ˜€λŠ” μ„ νƒμžμΈ 경우 ν•΄λ‹Ήν•˜λŠ” μžμ‹ μš”μ†Œλ“€μ„ μ„ νƒν•©λ‹ˆλ‹€.
각각의 μ„ νƒμžλ₯Ό λΆ€λ“±ν˜Έ (>) 둜 κ΅¬λΆ„ν•œλ‹€. (CSS2)

body > p {
    ...
}
  • 인접 ν˜•μ œ μ‘°ν•©μž (Adjacent Sibling Combinator)

λ”ν•˜κΈ° (+) 기호둜 이루어진 λ‘κ°œμ˜ μ„ νƒμžμ— ν•΄λ‹Ήν•˜λŠ” μš”μ†Œκ°€ μ„œλ‘œ λΆ€λͺ¨μš”μ†Œκ°€ 같은 ν˜•μ œ μš”μ†Œμ΄λ©° 첫번째 μš”μ†Œμ˜ λ°”λ‘œ λ’€μ—μ˜€λŠ” λ‘λ²ˆμ§Έ μš”μ†Œλ₯Ό μ„ νƒν•œλ‹€. (CSS2)

h1.opener + h2 {
    ...
}
  • 일반 ν˜•μ œ μ‘°ν•©μž (General Sibling Combinator)

λ¬Όκ²° (~) 기호둜 κ΅¬λΆ„λœ 두 μ„ νƒμžμ— ν•΄λ‹Ήλ˜λŠ” μš”μ†Œκ°€ μ„œλ‘œ λΆ€λͺ¨κ°€ λ™μΌν•œ ν˜•μ œμš”μ†Œμ΄λ©°, 첫번째 μš”μ†Œμ˜ 뒀에 μ΄μ–΄μ§€λŠ” λ‘λ²ˆμ§Έ μš”μ†Œλ“€μ„ μ„ νƒν•œλ‹€. (CSS3)

h1 ~ pre {
    ...
}

inline & inline block

  • { display: inline; }

λŒ€ν‘œμ μœΌλ‘œλŠ” <span> νƒœκ·Έμ˜ μ„±μ§ˆλ‘œ content/text 크기만큼만 μ μœ ν•˜κ³  동일 라인에 λΆ™λŠ” μ„±μ§ˆμ΄λ‹€.

  • width height 적용 λΆˆκ°€

  • margin padding-top padding-bottom 적용 λΆˆκ°€

  • line-height μ›ν•˜λŠ”λŒ€λ‘œ 적용 λΆˆκ°€ (<span> 에 적용 μ•ˆλ˜κ³  감싸고 μžˆλŠ” <div> 전체 ν¬κΈ°μ—λ§Œ 영ν–₯을 쀌)

  • { display: block; }

무쑰건 ν•œμ€„μ„ μ μœ ν•œλ‹€.

  • { display: inline-block; }

{display: inline;} κ³Ό {display: block} 의 ν˜Όν•©λœ ν˜•νƒœλ‘œ λŒ€λΆ€λΆ„μ˜ inline νŠΉμ„±μ„ κ°€μ Έκ°‘λ‹ˆλ‹€.

  • width/height 적용 κ°€λŠ₯
  • margin/padding-top/padding-bottom 적용 κ°€λŠ₯
  • line-height 적용 κ°€λŠ₯

{display: block} 끼리 곡백이 μƒκΈ°κ²Œ λ˜λŠ”λ°
μ΄λŠ” μƒμœ„ <div> 에 {font-size: 0} λ₯Ό μ μš©ν•˜λ©΄ ν•΄κ²° κ°€λŠ₯ν•˜λ‹€.

Keyframes

@keyframes ANIMATION_NAME_1 {
    from {opacity: 0;}
    to {opacity: 1;}
}

@keyframes ANIMATION_NAME_2 {
    0% {opacity: 0;}
    25% {opacity: 0.25;}
    50% {opacity: 0.5;}
    75% {opacity: 0.75;}
    100% {opacity: 1;}
}

.CLASS_NAME {animation: ANIMATION_NAME_1 3s infinite;}

Animation 에 λŒ€ν•œ μ μ •ν•œ μ‚¬μš©

CSS Animation : κ°„λ‹¨ν•œ UI μš”μ†Œ
JS Animation : λ°”μš΄μŠ€, 쀑지, μΌμ‹œμ •μ§€, 되감기, 가속 λ“±κ³Ό 같은 κ³ κΈ‰νš¨κ³Ό