언어/CSS

[Cascading] CSS에서 스타일 우선순위를 결정하는 규칙

Dachaes 2025. 5. 2. 16:54
728x90
반응형
728x90

Cascading 

“Cascading”이란 단어는 영어로 "폭포처럼 흐른다"는 뜻을 가지고 있으며, CSS(Cascading Style Sheets)에서 스타일이 적용되는 우선순위와 충돌 해결 방식을 설명할 때 사용됩니다. 웹 페이지의 요소는 여러 소스에서 스타일을 받을 수 있고, 이때 어떤 스타일이 실제로 적용될지를 결정하는 기준이 필요합니다. 이것이 바로 Cascading(계단식 적용) 규칙입니다. 이 규칙은 CSS의 핵심 동작 원리 중 하나이며, 스타일 충돌 상황을 자연스럽게 해결하고, 개발자가 유연하게 스타일을 제어할 수 있도록 돕습니다.

 


1.  Cascading이란?

Cascading은 CSS에서 동일한 요소에 여러 스타일 규칙이 적용될 때, 어떤 규칙이 최종적으로 적용되는지를 결정하는 규칙 체계를 말합니다. 이 과정에서 CSS는 세 가지 주요 기준을 바탕으로 우선순위를 정합니다.

CSS의 Cascading 우선순위 결정 기준

a.  명시도(Specificity)

선택자가 얼마나 구체적인지를 기준으로 합니다. ID > Class > 태그 순으로 우선순위가 높습니다.

/* specificity: 0,0,1 → 적용됨 */
p { color: red; }

/* specificity: 0,1,0 → 더 구체적이라 이게 적용됨 */
.text { color: blue; }

/* specificity: 1,0,0 → 가장 높음 */
#main { color: green; }

 

b.  소스 순서(Source Order)

같은 명시도를 가진 스타일이 충돌할 경우, 나중에 선언된 스타일이 적용됩니다.

 

c.  스타일 유형(Origin and Importance)

  • 사용자 스타일 > 작성자 스타일 > 브라우저 기본 스타일
  • !important가 붙은 속성이 우선 적용됨
p {
  color: red !important; /* 무조건 적용됨 */
}

 


2.  예시로 이해하는 Cascading

<style>
  p { color: red; }          /* 일반 태그 선택자 */
  .highlight { color: blue; } /* 클래스 선택자 */
  #intro { color: green; }    /* ID 선택자 */
</style>

<p id="intro" class="highlight">Hello CSS</p>
  • 어떤 색이 적용될까요?
    green이 적용됩니다.
    왜냐하면 ID 선택자(#intro)가 가장 높은 명시도를 가지기 때문입니다.

 


3.  Cascading이 중요한 이유

  • 스타일 충돌 방지 : 여러 CSS 파일이나 컴포넌트에서 동일 요소를 정의할 때 우선순위를 자동으로 조절해 줍니다.
  • 유지보수 용이성 : 코드를 구조화하고 확장하는 데 있어 명확한 규칙을 제공합니다.
  • 디버깅 수월 : 어떤 스타일이 실제로 적용되었는지 판단하기 쉬워집니다.
반응형

 


4.  마무리

  • Cascading은 CSS에서 충돌하는 스타일 중 어떤 것을 적용할지 결정하는 우선순위 규칙입니다.
  • 주요 기준은 명시도(Specificity), 선언 순서(Source Order), 스타일 출처 및 중요도(Origin & Importance)입니다.
  • 개발자는 이 규칙을 이해함으로써 예측 가능한 스타일링과 유지보수에 유리한 코드를 작성할 수 있습니다.

함께 보면 좋은 자료

외부 사이트 :

 


728x90
반응형