Я создаю анимацию ключевого кадра css, в которой изображение будет вставляться, парковаться в течение минуты, а затем выдвигаться, когда вставляется следующее изображение, и это будет выполняться в «бесконечном» цикле (до тех пор, покаесть класс animate для родительского элемента, который переключается с помощью js при прокрутке).
Что у меня есть (https://jsfiddle.net/WhiskeyT/Lurkf4f6/) представляет две проблемы:
Первыйтребуемые временные интервалы казались простыми - общая продолжительность анимации 3 секунды, длительности анимации для изображений 1, 2 и 3 равны 0, 3, 6, - но между выходящим изображением и входящим изображением наблюдается небольшая задержка или разрыв, и мне бы очень хотелось, чтобы это было ужесточено. Несмотря на долгие настройки, я не могу настроить ключевые кадры так, чтобы они были ближе к моей цели.
Второй вопрос более существенный и очевидный: 3 изображенияanimate, и поскольку анимация повторяется, загружается только 3-е изображение.
Любая помощь приветствуется.
Whisky T.
<div class="slide" id="slide-02">
<div class="image-rotator">
<img src="img1.jpg" alt="img" />
<img src="img2.jpg" alt="img" />
<img src="img3.jpg" alt="img" />
</div>
</div><!-- #slide-02 -->
.slide {
width: 100%;
height: 100vh;
position: relative;
}
#slide-02 .image-rotator {
position: relative;
width: 50%;
max-width: 450px;
height: 100%;
overflow: hidden;
}
#slide-02.animate .image-rotator img {
position: absolute;
top: 0;
left: -450px; // I remain confused as to how init rule collides w/0% keyframe ;(
width: 100%;
height: 100%;
}
#slide-02.animate .image-rotator img:nth-child(1) { animation: imgRotator 3s ease-in-out infinite 0s; }
#slide-02.animate .image-rotator img:nth-child(2) { animation: imgRotator 3s ease-in-out infinite 3s; }
#slide-02.animate .image-rotator img:nth-child(3) { animation: imgRotator 3s ease-in-out infinite 6s; }
@keyframes imgRotator {
0% {
opacity: 0;
left: 450px;
}
15%, 84% {
opacity: 1;
left: 0;
}
100% {
opacity: 0;
left: -450px;
}
}