2012-02-11 54 views

回答

95

功能符號是:not(),不:hover

a:not(.active):hover 

如果你喜歡把:hover第一,這很好:

a:hover:not(.active) 

不要緊其僞類至上或最後;無論哪種方式,選擇器都是一樣的。這恰好是我個人的慣例,將:hover放在最後,因爲我傾向於將用戶交互僞類放在結構僞類之後。

+1

啊,完美!謝謝@BoltClock。 – Michelle 2012-02-11 16:13:50

+0

如果您需要在版本9之前支持IE,請小心,因爲它們似乎不支持'not()'https://msdn.microsoft.com/en-us/library/cc351024(VS.85).aspx#pseudoclasses 。如果你願意的話,也許可以看看@Mendhak的答案。 – SharpC 2017-06-12 07:47:26

5

您可以選擇使用not()選擇器。

a:not(.active):hover { ... } 

但是,這可能不適用於所有瀏覽器,因爲並非所有瀏覽器都實現CSS3功能。

如果您針對的是大量受衆並希望支持舊版瀏覽器,那麼最好的方法是定義.active:hover的樣式並撤消您在a:hover中所做的任何操作。