>  기사  >  웹 프론트엔드  >  CSS 특이성을 사용하여 기존 웹사이트 CSS를 재정의하는 방법

CSS 특이성을 사용하여 기존 웹사이트 CSS를 재정의하는 방법

DDD
DDD원래의
2024-10-24 19:03:02630검색

How to Override Existing Website CSS Using CSS Specificity

새 CSS 파일로 웹사이트 CSS 재정의: CSS 특수성 이해

새 CSS 파일을 사용하여 기존 웹사이트의 CSS를 재정의하려면 포괄적인 CSS 규칙의 우선순위를 결정하는 메커니즘인 CSS 특수성을 이해합니다.

CSS 특수성이란 무엇인가요?

CSS 특수성은 CSS 선택자에 가중치를 할당하는 척도입니다. 유형에 따라. 구체성이 높을수록 해당 규칙에 부여되는 우선순위가 높아집니다. 선택기 유형은 다음과 같습니다.

  • 인라인(인라인 스타일이 있는 요소)
  • ID(예: #id)
  • 클래스(예: .class)
  • 요소(예: div)

기존 CSS를 재정의하는 방법

기존 웹사이트 파일에서 CSS 규칙을 재정의하려면 CSS 특수성을 활용할 수 있습니다. 고려해야 할 핵심 사항은 다음과 같습니다.

  1. 특이성 계산: 특이성은 규칙에서 각 유형의 선택기 수를 연결하여 계산됩니다.
  2. 우선순위: 동일한 구체성이 있는 경우 CSS 파일의 나중 선언이 우선합니다.
  3. "!important" 사용: 일반적으로 권장되지 않지만 "! important"를 사용하여 특정 규칙이 다른 규칙을 재정의하도록 하려면 잘못된 코딩 관행을 초래할 수 있으므로 주의해서 사용해야 합니다.

예: 인라인 스타일 재정의

다음 HTML 스니펫을 고려하세요.

<code class="html"><div id="id">
    <div class="class">
        <section>
            <div class="inline" style="background-color: red">
                <!-- SPECIFICITY 1/0/0/0 -->
            </div>
        </section>
    </div>
</div></code>

및 다음 CSS:

<code class="css">/* SPECIFICITY: 0/1/0/0 */
#id {
  background-color: green
}

/* SPECIFICITY: 0/0/1/0 */
.class {
  background-color: yellow 
}

/* SPECIFICITY: 0/0/0/1 */
section {
  background-color: blue 
}

/* SPECIFICITY: 0/0/1/0 - override inline styles */
.inline {
  background-color: purple !important /*going to be purple - final result */ 
}</code>

이 예에서 1/0/0/0의 특정성을 갖는 인라인 스타일은 다음에 의해 재정의됩니다. CSS의 "!important" 선언은 0/0/1/0이라는 낮은 특이성을 갖고 있지만

결론

CSS 특이성을 이해하는 것이 중요합니다. 자신만의 규칙으로 기존 웹사이트 CSS를 효과적으로 재정의합니다. 이 문서에 설명된 원칙을 활용하면 원하는 스타일을 구체적으로 타겟팅하고 재정의하는 새로운 CSS 파일을 만들 수 있으므로 소스 HTML을 수정하지 않고도 웹사이트의 모양을 맞춤 설정할 수 있습니다.

위 내용은 CSS 특이성을 사용하여 기존 웹사이트 CSS를 재정의하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.