:hover pseudoclass不适用于通用选择器*

时间:2011-03-27 05:02:44

标签: css css-selectors pseudo-class

如果我写

h1:hover, li:hover {color:green;}

h1和li元素都会产生悬停效果。

如果我写的话,请说:

*:hover {color: green;} 

这仅对锚元素有效。

是否:hover pseudoclass无法使用通用选择器?

2 个答案:

答案 0 :(得分:5)

确实有效。问题是,页面上的所有文字最终变为绿色,因为body元素也匹配,因此只要您的“鼠标悬停”效果不佳cursor位于视口的任何位置(即页面主体)。你可以通过不使用通用选择器来解决这个问题(我的意思是,你为什么这么做?)或指定body:hover颜色。

如果您只在a元素上看到悬停效果,那么您可能会在某处覆盖a:hover样式的*:hover样式,因为通用选择器的特定性不如类型选择器(也就是说,根本不具体。但是,在将光标移出视口之前,文本的其余部分应始终为绿色,例如将光标移动到浏览器镶边或远离窗口。 (请注意,我在评论中链接到的小提琴中的“视口”是iframe。)

答案 1 :(得分:0)

你在说什么浏览器?中和html:hoverbody:hover表明其余元素会在悬停时相应更改,至少在Chrome中也是如此,我相信其他现代浏览器。

演示:jsfiddle.net/Marcel/cTpxS