html - 如何使用纯CSS控制同一父级下的其他元素?

标签 html css hover selector parent

这是代码笔 Codepen 中的简单示例

我正在尝试制作一些属于同一个父元素的区域,
当我悬停其中一个时,其他的不透明度会降低,或者其他样式会发生变化。

例如,当我将鼠标悬停在第二个元素上时,具有相同父元素的第一个元素将更改其 background-color

我在第一段中使用了area这个词意味着 child 不一定非得是一个div,它可以是一个lip 或其他元素。
要解决这个问题,它可以是任何类型的元素。

html 看起来像这样:

<!-- html -->
<div class="parent">
  <div class="one"></div>
  <div class="two"></div>
  <div class="three"></div>
  <div class="four"></div>
</div>

我尝试了 E ~ F 规则来解决这个问题,我已经知道它只适用于第一个 div,它是父元素的第一个子元素。

除了javascript,还有其他方法可以用纯css实现这个功能吗?
谢谢

最佳答案

当您悬停 .parent 时,更改所有未悬停的子项的样式(pen):

.parent {
  width: 100px; /** limit the width of the parent, so you can't hover it, without hovering one of the children as well **/
  margin:10px;

  &:hover > div:not(:hover) { /** only change the background of divs you don't hover as well **/
    background: red;
  }

  div{
    width:100px;
    height:100px;
    border:1px solid black;
  }
}

关于html - 如何使用纯CSS控制同一父级下的其他元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36616059/

相关文章:

javascript - 滚动时模糊单个 div?

html - 如何从图像而不是文本中删除链接悬停?

html - nth-of-type 选择具有特定类别的前 3 个元素

html - CSS 固定菜单——如何不在容器外运行?

html - CSS 谷歌广告位置

html - 对齐按钮内的文本和图像

javascript - 我怎样才能让这个 plunker 可以运行?

html - 与此类似的图库仅适用于 HTML 和 CSS 中的 joomla

R plotly悬停标签文本对齐

javascript - 是否可以通过悬停而不是单击来激活 DIV?