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

标签 css hover css-selectors parent-child

我试图在 div 的第一个 child 上使用悬停来影响第三个 child 。有谁知道仅使用 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>

最佳答案

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

改变你的

#firstp:hover + p + p

#firstp:hover ~ p ~ p

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

关于css - 使用 css 将鼠标悬停在第一个子元素上时更改其他子元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14973780/

相关文章:

html - 文本修饰在链接上有下划线,但在::before 上没有下划线?

javascript - 如何从 Codepen 获取代码并在本地使用?

css - 为 Internet explorer IE6+ 设置圆 Angular (Border radius)

html - 可以 float 在任意后续内容上的简单 CSS 菜单

css - 使用 :hover selector for mobile devices 调整链接/div 的大小

css - 如何在悬停时让背景颜色覆盖整个 "block"

jquery - CSS 选择器属性不区分大小写

html - 在 Ionic 4 的另一个图像上重叠 svg 图标。需要它响应

html - 如何在没有额外间距的情况下将 mailto 添加到句子中?

CSS :last-child