Jak zastosować efekt najechania na aelement, ale nie na aelement z klasą active?
a:hover(not: .active)
Wydaje się, że czegoś brakuje.
Jak zastosować efekt najechania na aelement, ale nie na aelement z klasą active?
a:hover(not: .active)
Wydaje się, że czegoś brakuje.
Odpowiedzi:
Notacja funkcjonalna jest włączona :not(), a nie :hover:
a:not(.active):hover
Jeśli wolisz postawić na :hoverpierwszym miejscu, w porządku:
a:hover:not(.active)
Nie ma znaczenia, która pseudoklasa jest pierwsza czy ostatnia; tak czy inaczej, selektor działa tak samo. Tak się składa, że moim osobistą konwencją jest umieszczanie na :hoverostatnim miejscu, ponieważ mam tendencję do umieszczania pseudoklasy interakcji użytkownika za pseudoklasami strukturalnymi.
Masz możliwość skorzystania z not()selektora.
a:not(.active):hover { ... }
Jednak może to nie działać we wszystkich przeglądarkach, ponieważ nie wszystkie przeglądarki obsługują funkcje CSS3.
Jeśli kierujesz reklamy do dużej grupy odbiorców i chcesz obsługiwać starsze przeglądarki, najlepszym sposobem byłoby zdefiniowanie stylu .active:hoveri cofnięcie tego, co robisz a:hover.
not()msdn.microsoft.com/en-us/library/… . Być może zobacz odpowiedź od @Mendhak, jeśli tak.