🎨CSS | @at-rule, μ„ νƒμž, 길이(크기) λ‹¨μœ„, 속성 상속

μ›μ˜Β·2023λ…„ 3μ›” 2일
0

CSS μˆ˜μ—… λ‚΄μš© 쀑 처음 λ³΄λŠ” λ‚΄μš©, μ΅μˆ™ν•˜μ§€ μ•Šμ€ λ‚΄μš© 정리


@at-rule

  • @κ°€ λΆ™λŠ” 문법, λ¬Έμ„œ μ΅œμƒλ‹¨μ— μœ„μΉ˜
    @charset : μŠ€νƒ€μΌμ‹œνŠΈμ—μ„œ μ‚¬μš©ν•˜λŠ” 문자 인코딩 μ§€μ •, λ¬Έμ„œμ—μ„œ κ°€μž₯ λ¨Όμ € μ„ μ–Έ
    @import : λ‹€λ₯Έ μŠ€νƒ€μΌμ‹œνŠΈμ—μ„œ μŠ€νƒ€μΌ κ·œμΉ™ κ°€μ Έμ˜΄ @charset λ°”λ‘œ λ‹€μŒμ— μ„ μ–Έλ˜μ–΄μ•Ό 함
    @font-face : λ””λ°”μ΄μŠ€μ— μ—†λŠ” 폰트λ₯Ό λ‹€μš΄λ°›μ•„ μ μš©ν•  λ•Œ μ‚¬μš©
    @keyframes : μ• λ‹ˆλ©”μ΄μ…˜μ„ λ§Œλ“€ λ•Œ μ‚¬μš©
    @media : μ‚¬μš©μž λ””λ°”μ΄μŠ€μ— λ”°λ₯Έ μŠ€νƒ€μΌμ„ λΆ„κΈ° μ²˜λ¦¬ν•˜κ³ μž ν•  λ•Œ μ‚¬μš©

μ„ νƒμž

νŠΉμ„± μ„ νƒμž[ ] : μ£Όμ–΄μ§„ νŠΉμ„±μ„ κ°€μ§„ λͺ¨λ“  μš”μ†Œ 선택

  • 'attr' 속성이 ν¬ν•¨λœ μš”μ†Œ E 선택
E[attr] { }
  • 'attr' μ†μ„±μ˜ 값이 μ •ν™•ν•˜κ²Œ 'val'κ³Ό μΌμΉ˜ν•˜λŠ” μš”μ†Œ E 선택
E[attr="val"] { }

μ˜ˆμ‹œ
<input> νƒœκ·Έ 쀑 type이 'button'인 μš”μ†Œ 선택

input[type="button"] { }

λͺ¨λ“  νƒœκ·Έ 쀑 클래슀λͺ…이 'example'인 μš”μ†Œ 선택

[class="example"] { }
  • 'attr' μ†μ„±μ˜ 값이 'val'둜 μ‹œμž‘ν•˜λŠ” μš”μ†Œ 선택
E[attr^="val"] { }
  • 'attr' μ†μ„±μ˜ 값이 'val'둜 λλ‚˜λŠ” μš”μ†Œ 선택
E[attr$="val"] { }
  • 'attr' μ†μ„±μ˜ 값에 'val'이 ν¬ν•¨λ˜λŠ” μš”μ†Œ 선택
E[attr*="val"] { }

볡합 μ„ νƒμž

  • μžμ† μ„ νƒμž ( ) : 곡백 톡해 ꡬ뢄, 상속관계에 μžˆλŠ” λͺ¨λ“  μš”μ†Œ 선택 κ°€λŠ₯
/* <div> μ•ˆμ— μžˆλŠ” <p> 전체 선택 */
div p { }
  • μžμ‹ μ„ νƒμž (>) : λ°”λ‘œ λ°‘μ˜ μžμ‹λ§Œ 선택 κ°€λŠ₯
/* <div> λ°”λ‘œ 밑에 μžˆλŠ” <p> 전체 선택 */
div > p { }
  • 일반 ν˜•μ œ μ„ νƒμž (~) : 뒀에 μžˆλŠ” ν˜•μ œ νƒœκ·Έ(같은 λ“€μ—¬μ“°κΈ°) 전체 선택
/* <h1> 뒀에 λ‚˜μ˜€λŠ” ν˜•μ œμΈ <p> 전체 선택 */
h1 ~ p { }
  • 인접 ν˜•μ œ μ„ νƒμž (+) : λ°”λ‘œ 뒀에 μžˆλŠ” ν˜•μ œ νƒœκ·Έλ§Œ 선택
/* <h1> λ°”λ‘œ λ’€μ˜ ν˜•μ œμΈ <p> ν•œ 개 선택 */
h1 + p { }

길이 λ‹¨μœ„

  • μ ˆλŒ€κΈΈμ΄ λ‹¨μœ„
    px : λ””λ°”μ΄μŠ€ ν™”λ©΄μ—μ„œ 이미지λ₯Ό ν‘œν˜„ν•˜λŠ” κ°€μž₯ μž‘μ€ λ‹¨μœ„, κ³ μ •λœ κ°’

  • μƒλŒ€κΈΈμ΄ λ‹¨μœ„
    % : λΆ€λͺ¨ μš”μ†Œ κΈ°μ€€, λ°±λΆ„μœ¨ λ‹¨μœ„
    *cf) body의 height은 컨텐츠 크기, margin 쑴재
    vw, vh : 뷰포트(ν™”λ©΄) 넓이, 높이 κΈ°μ€€, λ°±λΆ„μœ¨ λ‹¨μœ„
    vmin, vmax : ν™”λ©΄μ˜ 넓이와 높이 쀑 μž‘μ€κ°’, 큰값 κΈ°μ€€, λ°±λΆ„μœ¨ λ‹¨μœ„
    em : λΆ€λͺ¨μš”μ†Œμ˜ κΈ€μžν¬κΈ° κΈ°μ€€, 배수 λ‹¨μœ„
    rem : μ΅œμƒμœ„ μš”μ†Œ 의 κΈ€μžν¬κΈ° κΈ°μ€€, 배수 λ‹¨μœ„

    em, rem κ΄€λ ¨ μ„ΈλΆ€ 정리
    https://velog.io/@wswy17/CSS-%EA%B8%B8%EC%9D%B4-%EB%8B%A8%EC%9C%84-em-rem


상속

  • inherit : μ„ νƒν•œ μš”μ†Œμ— 적용된 속성 κ°’ λΆ€λͺ¨μ™€ 동일
    .parent {
    	display: block;
    }
    .child {
    	display: inherit;
    }
  • currentColor : λΆ€λͺ¨μ— color 값이 μžˆλ‹€λ©΄ μƒμ†μœΌλ‘œ 처리
  div { color: green; }
  p { border: 1px solid currentColor; }
profile
ν™”μ΄νŒ…~~^ㅁ^/

0개의 λŒ“κΈ€