:is()
및 :where()
는 CSS가 유사한 기능을 제공하지만 특이성이 크게 다릅니다. 최근 : :is()
더 넓은 브라우저 지원으로 인해 인기를 얻었으며 복잡한 선택기를 단순화했습니다. 그러나 :where()
특이성을 제어하는 데 중요한 이점을 제공합니다.
:is()
가장 구체적인 인수의 특이성을 상속합니다. 이는 추가 클래스를 추가하지 않고 특이성을 높이는 데 유리할 수 있습니다.
: is (.Button, #증가 #특이도) { / * 특이성 증가 */ }
반대로, :where()
논증에 관계없이 항상 특이성이 없습니다. 이는 특히 높은 특이성 선택기가 의도하지 않게보다 일반적인 스타일을 무시할 수있는 상황에서 특이성을 낮추는 데 특히 유용합니다. 이 예를 고려하십시오 :
.card : is (.title, p) { / * .Title * /로 인한 높은 특이성 색상 : 빨간색; } .card p { / * 더 낮은 특이성 * / 색상 : 노란색; }
여기에서 red
:is()
같이 승리합니다. 전환 :where()
결과가 변경됩니다.
.card : 여기서 (.Title, p) { / * Zero Specipity * / 색상 : 빨간색; } .card p { / * 더 낮은 특이성이지만 여전히 승리 * / 색상 : 노란색; }
이제는 다음과 같이 yellow
합니다 :where()
의 특이성이 낮습니다.
선택 :is()
및 :where()
특정 요구에 따라 다릅니다. 일반적으로 :is()
단순성을 위해 권장됩니다. 그러나 특이성 충돌에 직면하면 :where()
특이성을 관리하고 줄이는 강력한 도구를 제공하여 의도하지 않은 스타일이 비난을 방지합니다. 낮은 특이성은 일반적으로 유지 가능성을 위해 선호되지만, 다음의 극도의 제로 특이성 :where()
자체 복잡성을 도입 할 수 있습니다. 따라서 균형 잡힌 접근 방식은 핵심입니다 - 사용 :is()
:where()
.
위 내용은 : 여기서 ()는 멋진 특이성 트릭도 있습니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!