한 요소에 중복된 속성이 적용되었을 때 최종적으로 요소에 어떤 값을 부여할지 결정하는 방식을 Cascading이라 한다. 더 직접적이고, 구체적인 방식으로 속성을 부여했을 경우 우선순위가 높다.
- importance
- Specificity
- 소스 순서
importance
!important는 모든 Cascading 규칙을 무시하고 해당 요소의 우선순위를 가장 높여준다.
Specificity (명시도)
요소에 속성을 부여한 선택자의 Specificity가 클수록 우선순위가 높다. Specificity는 다음과 같은 방법으로 계산한다.
1000: 선언이 인라인 스타일인 style 속성 안에 있으면, 이러한 선언에는 선택자가 없으므로 그 우선 순위는 항상 1000 입니다.
100: 전체 선택자에 포함된 각 ID 선택자에 대해 이 열에서 1점을 얻습니다.
10: 이 선택란에서 전체 선택자 내에 포함된 각 class 선택자, 속성 선택자 또는 pseudo-class 에 대해 이 열에서 1점을 얻습니다.
1: 이 항목에서 각 요소 선택자 또는 전체 선택자 내에 포함된 pseudo-element 에 대해 1점을 얻습니다
소스 순서
가장 마지막으로 고려하는 요소이다. importance와 Specificity가 동일할 경우, 더 나중 코드가 우선순위를 갖는다.