更改接下来的CSS元素

Mar*_*sco -1 html css css-selectors css3

我想悬停在a.bio改变背景.pic为绿色.

我尝试了一些方法,但没有成功.

我不理解它的逻辑~ 以及如何使其工作.

.executivo .pic::after {
  background-color: #00845b;
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  opacity: 0;
  transition: .3s ease-in-out;
}
.equipe a.bio:hover ~ .pic::after {
  opacity: 0.35;
}
.executivo .pic {
  margin-bottom: 45px;
  position: relative;
}
.executivo .pic img {
  display: block;
}
Run Code Online (Sandbox Code Playgroud)
<div class="executivo">
  <div class="pic">
    <img src="<?php echo $pic; ?>" alt="<?php echo $nome; ?>" />
  </div>

  <div class="title">
    <h3><?php echo $nome; ?></h3>
  </div>

  <a class="bio" href="#">Bio+</a>

</div>
Run Code Online (Sandbox Code Playgroud)

dip*_*pas 9

移动你a.bio的HTML,因为它~是一个兄弟选择器(但不是那么严格+),并且position在移动HTML之前用它保持原样:

片段

.executivo .pic::after {
  background-color: #00845b;
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  opacity: 0;
  transition: .3s ease-in-out;
}
.executivo {
  position: relative;
}
.executivo a.bio {
  position: absolute;
  bottom: -20px
}
.executivo a.bio:hover ~ .pic img {
  opacity: 0.35;
}
.executivo .pic {
  margin-bottom: 45px;
  position: relative;
}
.executivo .pic img {
  display: block;
  max-width:100% /*demo*/
}
Run Code Online (Sandbox Code Playgroud)
<div class="executivo">
  <a class="bio" href="#">Bio+</a>
  <div class="pic">
    <img src="//lorempixel.com/1600/900" alt="alt text" />
  </div>
  <div class="title">
    <h3>title</h3>
  </div>
</div>
Run Code Online (Sandbox Code Playgroud)