:hover但:不是在一个特定的类

我如何应用一个元素的hover效果,但不是一个active的类a元素?

 a:hover(not: .active) 

似乎缺less一些东西。

函数表示法是:not() ,不是:hover

 a:not(.active):hover 

如果你喜欢把:hover:hover ,那很好:

 a:hover:not(.active) 

无论哪个伪类首先或最后一个都没有关系; 无论如何,select器的工作原理是一样的。 这恰好是我个人的习惯:hover:hover放在最后,因为我倾向于将用户交互伪类放在结构伪类的后面。

您可以select使用not()select器。

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

但是,这可能不适用于所有浏览器,因为并非所有的浏览器都实现了CSS3function。

如果您的目标受众众多,并希望支持旧浏览器,则最好的方法是为.active:hover定义一个样式,并撤消您在.active:hover执行的任何操作。