HTML / CSS: Не работает :hover на другой элемент. В чем ошибка?

столкнулся с такой проблемой при обучении по видео уроку:

Есть фотография на неё наложен полупрозрачный элемент, создающийся с помощью соседнего элемента с opacity: 0.5. При наведении на фотографию курсора, этот полупрозрачный элемент должен изчезать.

Если настраиваю hover и эффект от него на один и тот же элемент - то всё работает(при наведении на картинку, она изчезает). Но при попытке сделать hover на одном элементе, который влияет на другой - ничего не происходит.

Заранее спасибо!

body {
  position: relative;
  color: #22222b;
  font-family: 'Roboto', sans-serif;
}

.wrapper {
  max-width: 1170px;
  padding-left: 15px;
  padding-right: 15px;
  margin: 0 auto;
}

.myPortfolio-image {
  position: relative;
}

.myPortfolio-item {
  background-color: #EDEDEE;
  display: flex;
  justify-content: space-around;
  align-items: center;
  position: absolute;
  opacity: 0.5;
  width: 313px;
  height: 404px;
  left: 26px;
  top: 33px;
}

.myPortfolio_text {
  height: 113px;
  flex-direction: column;
  display: flex;
  justify-content: space-between;
  text-align: center;
  color: #22222b;
  font-weight: 400;
  font-size: 24px;
  margin-top: 17px;
  margin-left: 1px;
}

.myPortfolio_text a {
  height: 22px;
  width: 22px;
  margin-left: calc(50% - 11px);
  margin-bottom: -16px;
}

.img-hover:hover .myPortfolio-item {
  display: none;
}
<section class="myPortfolio">
  <div class="wrapper">
    <div class="myPortfolio-container">

      <div class="myPortfolio-box">
        <div class="myPortfolio-image">
          <div class="myPortfolio-item">
            <div class="myPortfolio_text">
              <a href=""><img src="image/plus.png" alt="plus"></a>
              <p class="p1">The Day City</p>
              <p class="p2">Photo</p>
            </div>
          </div>
          <img class="img-hover" src="image/townStraight.png" alt="City">
        </div>
      </div>

    </div>
  </div>
</section>

P. S. так тоже не работает:

.img-hover:hover + .myPortfolio-item {
  display: none;
}

Ответы (1 шт):

Автор решения: Venom

После каждого элемента нужно писать :hover.

То есть, тут:

.img-hover:hover .myPortfolio-item {
  display: none;
}

После .myPortfolio-item не стоит :hover. Должно быть так:

.img-hover:hover .myPortfolio-item:hover {
  display: none;
}
→ Ссылка