Wczoraj natknąłem się na to: Jeden z moich :hover
-states przestał działać. I okazało się, że jeśli to zmienić:Czy ktoś może wyjaśnić, dlaczego selektor "n-dziecko" ma wyższy priorytet niż "najeżdżanie"?
div.item {}
div.item:hover {}
div.item:nth-child(even) {}
do tego:
div.item {}
div.item:nth-child(even) {}
div.item:hover {}
działa ponownie.
Utworzono demo on jsfiddle, aby pokazać oba przypadki.
Czy ktoś może wyjaśnić, dlaczego :hover
-state jest nadpisane przez selektor?
+1 Dziękuję, dokładnie to, czego szukałem. Sądziłem, że w pseudoklasach wciąż istnieje hierarchia. – insertusernamehere
@insertusernametutaj: Nie, jedyną pseudoklasą, która jest zwolniona ze zwykłego obliczenia, jest ': not()', która zamiast tego przyjmuje specyfikę swojego argumentu. Oznacza to, że specyficzność ': not (E)' to 'E', a nie': not() '. – BoltClock
@BoltClock Ah, więc istnieje co najmniej jeden wyjątek. Dzięki za te dodatkowe informacje. – insertusernamehere