Наложение второго изображения с z-индексом

#javascript #html #css #intersection-observer

#javascript #HTML #css #пересечение-наблюдатель

Вопрос:

У меня проблема с двумя images . У меня есть 1 изображение (мы rucab) и парень в качестве второго изображения. Я использую intersection observer , чтобы сначала показать изображение we are rucab, а затем изображение парня. Проблема в том, что когда появляется парень, мы — rucab, оставаясь впереди, я хочу, чтобы изображение «мы — rucab» возвращалось назад, а парень появлялся спереди, сохраняя адаптивность, размеры и все остальное в том же положении. Я пытался поиграть с z-index absolute positioning , но у меня ничего не получилось. Вы можете увидеть пример здесь.

 <div class="img-container col-lg-7">
        <div class="jumping">
      <img class="top superman active" alt="" src="img/Ilustracion Hombre-05.png" data-src="img/Ilustracion Hombre-05.png" width="100%">
        </div>
            <img class="we-are-rucab-img show-bottom" style="z-index: -1000 !important;" src="img/Letras We are Rucab-06.png" data-src="img/Letras We are Rucab-06.png" width="100%" title="We are RUCAB" alt="We are RUCAB">

          </div>
  

CSS

Контейнер Img:

 .img-container {
    padding-top: 35px;
    position: relative;
    margin-right: -2px !important;
    background: linear-gradient(90deg, transparent 42%, #fbc00c 42%);
}
  

Первое изображение (мы rucab):

    .we-are-rucab-img {outline: 1px solid transparent;opacity: 0; transition: 1s opacity;}
.we-are-rucab-img.show-bottom {opacity: 1;  
  animation: movefromtop 1s alternate infinite;
  animation-iteration-count: 1;
  animation-fill-mode:  forwards;}
@keyframes movefromtop {
  from {
    transform: translateY(-5em);
  }
  to {
    transform: translateY(0em);
  }
}
  

Второе изображение (парень):

       .superman {opacity: 0; transition: 1s opacity;}
.superman.active {opacity: 1;  
  animation: movefrombottom 1s infinite;
  animation-iteration-count: 1;
  }

@keyframes movefrombottom {
  from {
    transform: translateY(5em);
  }
  to {
    transform: translateY(0em);
  }
}
  

JS Intersection observer (Наблюдатель пересечения):

 // Instantiate a new Intersection Observer

let observer10 = new IntersectionObserver(onEntry10);

let element10 = document.querySelector(".home-button");
observer10.observe(element10);

let superman = document.querySelector('.superman');

function onEntry10(entry10) {
  if (entry10[0].isIntersecting) {
      setTimeout(function() {
    superman.classList.add("active");
    }, 300);
  }
}

// Instantiate a new Intersection Observer

let observer9 = new IntersectionObserver(onEntry9);

let element9 = document.querySelector(".home-button");
observer9.observe(element9);

let werucab = document.querySelector('.we-are-rucab-img');

function onEntry9(entry9) {
  if (entry9[0].isIntersecting) {
    werucab.classList.add("show-bottom");
  }
}