CSS에서 계층구조나 적용 우선순위 가이드 같은 것들이 존재할까?

KIM YONG GU·2023년 10월 5일
0

프론트 엔드

목록 보기
2/13

네, CSS에서 스타일 규칙이 적용되는 우선순위에 대한 일반적인 가이드라인과 계층구조에 대한 이해가 있습니다. 이러한 가이드라인과 개념은 CSS 스타일링을 더 효과적으로 다루는 데 도움이 됩니다.

선택자의 특정성(Specificity of selector)

선택자의 특정성은 스타일 규칙의 우선순위를 결정하는 중요한 요소 중 하나입니다. 특정성은 선택자에 사용된 요소, 클래스, ID 등의 수에 따라 계산됩니다. 더 구체적인 선택자가 더 높은 특정성을 가집니다. 일반적인 가이드라인은 다음과 같습니다:

ID 선택자 (#myId)는 100점을 가집니다.
클래스 선택자 (.myClass)와 속성 선택자 ([type="text"])는 10점을 가집니다.
요소 선택자 (div, p, 등)는 1점을 가집니다.

선택자의 위치(Selector Position)

동일한 특정성과 우선순위를 가진 규칙 중에서 마지막에 선언된 규칙이 우선권을 갖습니다. 이것을 "나중에 선언된 스타일이 이전에 선언된 스타일을 덮어쓴다"라고 생각할 수 있습니다.

인라인 스타일(Inline Styles)

HTML 요소의 style 속성에 직접 스타일을 지정한 경우, 이 스타일은 다른 모든 스타일보다 우선합니다. 그러나 인라인 스타일은 유지 관리가 어려울 수 있으므로 되도록 사용을 피하는 것이 좋습니다.

<class id ="example" style="color:white;">

중요한 스타일(Important Styles)

스타일 속성에 !important를 사용하면 해당 스타일이 다른 모든 스타일을 무시하고 우선합니다. 그러나 !important를 남용하면 코드 유지 보수가 어려워질 수 있으므로 주의해서 사용해야 합니다.

계층구조(Hierarchical Structure)

HTML 요소의 부모-자식 관계와 중첩된 요소 간의 스타일 상속도 고려해야 합니다. 부모 요소에서 설정한 스타일은 자식 요소에 상속될 수 있습니다.

이러한 요소들을 함께 고려하여 스타일을 작성하면 원하는 결과를 더 쉽게 얻을 수 있습니다. 그러나 너무 복잡한 선택자 체인이나 너무 많은 !important 규칙을 사용하는 것을 피하고, 명시적이고 구조적인 CSS 작성을 권장합니다.

profile
Engineer, Look Beyond the Code.

0개의 댓글