Не отображается картинка на слайдере

Не видна картинка на слайдере но при смене слайдов он появляется во время анимации. В чем может быть проблема?

<main class="main">
  <div class="main__slider slider">
    <div class="slider__wrapper">
      <div class="slider__item">
        <img src="img/slide1.jpg" alt="Слайд 1" class="slider__image">
      </div>
      <div class="slider__item">
        <img src="img/slide1.jpg" alt="Слайд 2" class="slider__image">
      </div>
      <div class="slider__item">
        <img src="img/slide3.jpg" alt="Слайд 3" class="slider__image">
      </div>
    </div>
  </div>
</main>

.main {
  width: 100%;
  height: 100vh;
  overflow: hidden;
}

.slider {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.slider__wrapper {
  display: flex;
  width: 300%;
  height: 100%;
  transition: transform 0.8s ease;
  transform: translateX(0%);
}


.slider__item {
  flex: 0 0 100%;
  height: 100%;
}

.slider__image {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
  display: block;
}



  $(function () {
    const $wrapper = $('.slider__wrapper');
    const slideCount = $('.slider__item').length;
    let currentIndex = 0;

    function goToSlide(index) {
      const offset = -index * 100 + '%';
      $wrapper.css('transform', 'translateX(' + offset + ')');
    }


    setInterval(function () {
      currentIndex = (currentIndex + 1) % slideCount;
      goToSlide(currentIndex);
    }, 4000); 
  });

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

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

Дело в том, что браузер пытается оптимизировать производительность, поэтому не отрисовывает изображение, которое, по его мнению, не находится в области видимости Исправить эту проблему можно простым добавлением свойства will-change.

.slider__wrapper {
  display: flex;
  width: 300%;
  height: 100%;
  transition: transform 0.8s ease;
  transform: translateX(0%);
  will-change: transform; /* Сюда */
}
→ Ссылка