웹페이지 스타일을 정의할 때 원하는 스타일 결과를 보장하려면 CSS 우선순위의 개념을 이해하는 것이 중요합니다. 여러 CSS 선언이 동일한 요소에 적용되는 경우 우선순위 규칙에 따라 어떤 규칙이 다른 규칙보다 우선할지 결정됩니다.
다음 시나리오를 고려하세요.
<link href="/Content/Site.css" rel="stylesheet" type="text/css" /> <style type="text/css"> td { padding-left:10px; } </style>
이 예에서는 td 요소(padding-left:10px; 지정)에 대한 인라인 스타일이 코드 후반부에 나타남에도 불구하고 무시되는 것 같습니다. Firebug와 같은 개발 도구를 사용하여 웹페이지를 검사하면 참조된 스타일시트에 다음이 포함되어 있음이 드러납니다.
.rightColumn * {margin: 0; padding: 0;}
참조된 스타일시트 규칙 .rightColumn *이 #rightColumn 요소 내의 td 요소에 적용되고 인라인 스타일을 재정의하기 때문에 충돌이 발생합니다. .
CSS 특정성 규칙은 CSS 선언의 우선순위를 결정합니다. 이러한 규칙은 선택기 수와 해당 특이성에 따라 각 선언에 숫자 값을 할당합니다. 구체성 값이 더 높은 선언이 우선합니다.
이 경우 참조된 스타일시트 규칙 .rightColumn *은 선택기가 더 많기 때문에 td의 인라인 스타일보다 구체성이 더 높습니다.
이러한 충돌을 해결하려면 두 가지 주요 접근 방식이 있습니다.
제공된 예에서 가장 좋은 해결책은 td에 대한 인라인 스타일의 특수성을 높이는 것입니다. 클래스 또는 ID를 추가하여:
<table class="mySpecialTable"> <tr> <td style="padding-left:10px;">Example data</td> </tr> </table>
이 수정을 통해 mySpecialTable 클래스가 있는 테이블 내의 td 요소에 대한 인라인 스타일이 참조된 스타일시트의 충돌 규칙을 재정의합니다.
위 내용은 여러 스타일이 동일한 요소에 적용될 때 CSS 우선순위 충돌을 어떻게 해결합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!