我有这样的CSS:替代父CSS属性
a:hover {
background-color:#D1E1EA;
color:#19558D;
text-decoration:none;
}
在我的应用程序的所有链接。但是,在一个特定的链接上,我想取消所有这些hover
行为。我怎样才能做到这一点?
请注意,这不是重新定义这些属性的特定链接那样简单,因为特定链接的颜色发生变化,所以我不能只选择一个background-color
...
我有这样的CSS:替代父CSS属性
a:hover {
background-color:#D1E1EA;
color:#19558D;
text-decoration:none;
}
在我的应用程序的所有链接。但是,在一个特定的链接上,我想取消所有这些hover
行为。我怎样才能做到这一点?
请注意,这不是重新定义这些属性的特定链接那样简单,因为特定链接的颜色发生变化,所以我不能只选择一个background-color
...
我不能完全通过覆盖确定你的意思,但你可以尝试设置背景颜色为透明,所以你没有指定一个特定的颜色。
a:hover.moreSpecific{
background-color: transparent;
}
我以前发布的评论说你不能这样做,但有一个:not()
选择在CSS 3,可以做到这一点。 It just won't work in IE < 9。我想你不得不在JS中使用JS。
a:hover:not(#specific_link) {
background-color:#D1E1EA;
color:#19558D;
text-decoration:none;
}
大多数(?全部)CSS属性允许你inherit
从父元素:
a:hover.special {
background: transparent;
color: inherit;
text-decoration: inherit;
}
值得注意的是,在IE <8中,除了'direction'和'visibility'之外的任何东西都不能使用'inherit'。http://reference.sitepoint.com/css/inheritvalue – 2011-03-24 05:48:19
公平点。无论如何,你的CSS3方法更清洁(并且可以使用selectivizr.js之类的东西在IE6-8中工作)。 – 2011-03-24 12:46:12
我不明白你的问题的标题。 – BoltClock 2011-03-24 05:39:43
@BoltClock - 我甚至都不明白问题的正文。我以为他不能设置一个特定的背景颜色... – 2011-03-24 06:00:39
他说,有一个父CSS文件,修改锚标签的悬停选择器与体内的3行(如图所示),他希望这不会发生在继承的css文件中;具体而言,他希望显示的特定行为不会发生。 – OKGimmeMoney 2015-05-07 21:14:47