使用css将鼠标悬停在第一个孩子上时更改其他子元素

时间:2013-02-20 06:42:54

标签: css hover css-selectors parent-child

我试图影响第三个孩子使用悬停在div的第一个孩子身上。有没有人知道使用css的方法呢?

http://jsfiddle.net/boou28/fNxGa/

CSS

    /* works */
#firstp + p
{
background:#dddddd;
}

#firstp:hover + p
{
background:#ff0000;
}

#firstp + p + p
{
background:#dddddd;
}    

    /* doesnt work */

#firstp:hover + p + p
{
background:#ff0000;
}


HTML

<body>
<p>The first paragraph.</p>
<p>The second paragraph.</p>
<p>The third paragraph.</p>
</body>

2 个答案:

答案 0 :(得分:3)

http://jsfiddle.net/fNxGa/5/

更改您的

#firstp:hover + p + p

#firstp:hover ~ p ~ p

~+选择器的工作方式相同,但~限制性较小,因为它会选择跟随hovered元素的任何p。使用+时,仅选择下一个兄弟(在悬停元素之后)。

答案 1 :(得分:1)

我已经注释掉了

#firstp:hover + p
{
   background:#ff0000;
}

它似乎有效(即使没有评论):
Fiddle