Web/CSS

CSS Inheritance (CSS 상속)

영끼끼 2025. 2. 25. 15:35

✅ CSS Inheritance (CSS 상속)

CSS에서는 특정 속성이 부모 요소에서 자식 요소로 전달되는 상속(Inheritance) 개념이 존재합니다. 이를 활용하면 코드의 재사용성을 높이고, 스타일을 더욱 효율적으로 관리할 수 있습니다.


📌 CSS 속성의 2가지 분류

CSS 속성은 상속되는 속성상속되지 않는 속성으로 나뉩니다.

✅ 상속되는 속성

  • 주로 텍스트 관련 속성이 포함됩니다.
  • font, color, text-align, visibility, opacity 등이 상속됩니다.

✅ 상속되지 않는 속성

  • 주로 레이아웃 및 박스 모델 관련 속성이 포함됩니다.
  • width, height, border, box-sizing, position, z-index 등은 상속되지 않습니다.

📌 CSS 상속 예제

✅ HTML 코드

<ul class="parent">
    <li class="child">Hello</li>
    <li class="child">Bye</li>
</ul>

✅ CSS 코드

.parent {
    /* 상속 O */
    color: red;
    
    /* 상속 X */
    border: 1px solid black;
}

✅ color: red; 속성은 텍스트 관련 속성이므로 자식 요소 (.child)에도 자동으로 적용됩니다. ✅ border: 1px solid black; 속성은 박스 모델 관련 속성이므로 자식 요소에는 적용되지 않습니다.


📌 CSS 상속 제어하기

1️⃣ 강제 상속 (inherit)

  • 기본적으로 상속되지 않는 속성도 강제적으로 상속받을 수 있습니다.
.child {
    border: inherit;
}

2️⃣ 상속 차단 (initial, unset)

  • 특정 요소가 부모로부터 상속을 받지 않도록 설정할 수 있습니다.
.child {
    color: initial; /* 기본값으로 초기화 */
    text-align: unset; /* 부모의 영향을 받지 않도록 설정 */
}

✅ 결론

  • CSS 상속은 주로 텍스트 관련 속성에서 발생하며, color, font 등의 속성은 자동으로 상속됨.
  • 레이아웃 및 박스 모델 속성은 기본적으로 상속되지 않음 (border, width, position 등).
  • inherit, initial, unset을 활용하여 원하는 상속 효과를 적용 가능.

CSS 상속을 적절히 활용하면 코드의 중복을 줄이고, 유지보수를 쉽게 할 수 있습니다!

'Web > CSS' 카테고리의 다른 글

CSS Box Model  (3) 2025.02.26
Specificity (명시도)  (1) 2025.02.25
CSS Selectors (CSS 선택자)  (1) 2025.02.25
CSS (Cascading Style Sheets)  (1) 2025.02.25