이 두 선택 자의 차이점은 무엇입니까?
.classA.classB {
border: 1px solid;
}
.classA .classB {
border: 1px solid;
}
답변:
이와 같은 스타일은 훨씬 더 일반적이며 "classA"클래스의 모든 유형의 요소 내에 중첩 된 "classB"클래스의 모든 유형의 요소를 대상으로합니다.
.classA .classB {
border: 1px solid; }
예를 들어 다음과 같이 작동합니다.
<div class="classA">
<p class="classB">asdf</p>
</div>
그러나 이것은 "classA"클래스와 "classB"클래스 모두 인 모든 유형의 요소를 대상으로합니다. 이러한 유형의 스타일은 자주 표시되지 않지만 일부 상황에서는 여전히 유용합니다.
.classA.classB {
border: 1px solid; }
이것은이 예에 적용됩니다.
<p class="classA classB">asdf</p>
그러나 다음에 대해서는 영향을 미치지 않습니다.
<p class="classA">fail</p>
<p class="classB">fail</p>
(HTML 요소에 여러 클래스가있는 경우 공백으로 구분됩니다.)
.classA.classB
즉, 두 클래스 이름이있는 요소가 모두 선택되는 반면 내부에 .classA .classB
클래스 이름이있는 요소 만 선택 됨을 의미합니다 .classB
classA