Как сделать, поочередную, бесконечную анимацию , одинаковым элементам

Делаю блок с анимациями, внутри 4 одинаковых элемента которые анимируются с помошью эфекта куба, при этом каждый элемент останавливается и после этого стартует анимация второго элемента. Вопрос: Как сделать, что бы это все было еще и бесконечно? Сейчас просто добавил несколько анимаций, но это такое...

.slider__container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.slider__slide {
  overflow: hidden;
  -webkit-box-flex: 0;
      -ms-flex: 0 1 49.6%;
          flex: 0 1 49.6%;
  min-height: 355px;
  -webkit-perspective: 800;
          perspective: 800;
  -webkit-perspective-origin: 50% 50%;
          perspective-origin: 50% 50%;
}

.slider__slide:nth-child(1),
.slider__slide:nth-child(2) {
  margin-bottom: 10px;
}

.slider__item {
  width: 100%;
  height: 100%;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-transform: rotateX(0deg) translateZ(-113px);
          transform: rotateX(0deg) translateZ(-113px);
  -webkit-transform-origin: 50% 50% 0;
      -ms-transform-origin: 50% 50% 0;
          transform-origin: 50% 50% 0;
  -webkit-transform-style: preserve-3d;
          transform-style: preserve-3d;
  -webkit-animation: cub 5s timing-function delay iteration-count direction forwards;
          animation: cub 5s timing-function delay iteration-count direction forwards;
  -webkit-animation-direction: alternate;
          animation-direction: alternate;
}

.slider__img {
  -webkit-transform: translateZ(178px);
          transform: translateZ(178px);
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 2;
}

.slider__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.slider__info {
  top: -65px;
  z-index: 1;
  -webkit-transform: rotateX(90deg) translateZ(113px);
          transform: rotateX(90deg) translateZ(113px);
  position: relative;
  width: 92%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.slider__info a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.slider__logo {
  margin-bottom: 44px;
}

.slider__logo img {
  max-width: 100%;
  max-height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.slider__name {
  font-weight: 700;
  font-size: 34px;
  line-height: 39px;
}

.slider__descr {
  margin-top: 25px;
  font-weight: 400;
  font-size: 17px;
  line-height: 22px;
  max-width: 250px;
  text-align: center;
  letter-spacing: 1px;
}

.slider .arena {
  background: #55022b;
}

.slider .group {
  background: #077664;
}

.slider .club {
  background: #022a51;
}

.slider .andr {
  background: #01419d;
}

.slider .animate-1 {
  -webkit-animation: cub 5s 8s forwards, cub_1 5s 27s forwards, cub_2 5s 46s forwards, cub_3 5s 65s forwards;
          animation: cub 5s 8s forwards, cub_1 5s 27s forwards, cub_2 5s 46s forwards, cub_3 5s 65s forwards;
}

.slider .animate-2 {
  -webkit-animation: cub 5s 12s forwards, cub_1 5s 32s forwards, cub_2 5s 52s forwards, cub_3 5s 72s forwards;
          animation: cub 5s 12s forwards, cub_1 5s 32s forwards, cub_2 5s 52s forwards, cub_3 5s 72s forwards;
}

.slider .animate-3 {
  -webkit-animation: cub 5s 17s forwards, cub_1 5s 37s forwards, cub_2 5s 57s forwards, cub_3 5s 77s forwards;
          animation: cub 5s 17s forwards, cub_1 5s 37s forwards, cub_2 5s 57s forwards, cub_3 5s 77s forwards;
}

.slider .animate-4 {
  -webkit-animation: cub 5s 22s forwards, cub_1 5s 42s forwards, cub_2 5s 62s forwards, cub_3 5s 82s forwards;
          animation: cub 5s 22s forwards, cub_1 5s 42s forwards, cub_2 5s 62s forwards, cub_3 5s 82s forwards;
}

@-webkit-keyframes cub {
  0% {
    -webkit-transform-origin: 50% 50% 0;
            transform-origin: 50% 50% 0;
    -webkit-transform: rotateX(0deg) translateZ(-113px);
            transform: rotateX(0deg) translateZ(-113px);
  }

  25% {
    -webkit-transform-origin: 50% 50% 0;
            transform-origin: 50% 50% 0;
    -webkit-transform: rotateX(-90deg) translateY(113px);
            transform: rotateX(-90deg) translateY(113px);
  }

  80% {
    -webkit-transform-origin: 50% 50% 0;
            transform-origin: 50% 50% 0;
    -webkit-transform: rotateX(-90deg) translateY(113px);
            transform: rotateX(-90deg) translateY(113px);
  }

  100% {
    -webkit-transform-origin: 50% 50% 0;
            transform-origin: 50% 50% 0;
    -webkit-transform: rotateX(0deg) translateZ(-113px);
            transform: rotateX(0deg) translateZ(-113px);
  }
}

@keyframes cub {
  0% {
    -webkit-transform-origin: 50% 50% 0;
            transform-origin: 50% 50% 0;
    -webkit-transform: rotateX(0deg) translateZ(-113px);
            transform: rotateX(0deg) translateZ(-113px);
  }

  25% {
    -webkit-transform-origin: 50% 50% 0;
            transform-origin: 50% 50% 0;
    -webkit-transform: rotateX(-90deg) translateY(113px);
            transform: rotateX(-90deg) translateY(113px);
  }

  80% {
    -webkit-transform-origin: 50% 50% 0;
            transform-origin: 50% 50% 0;
    -webkit-transform: rotateX(-90deg) translateY(113px);
            transform: rotateX(-90deg) translateY(113px);
  }

  100% {
    -webkit-transform-origin: 50% 50% 0;
            transform-origin: 50% 50% 0;
    -webkit-transform: rotateX(0deg) translateZ(-113px);
            transform: rotateX(0deg) translateZ(-113px);
  }
}

@-webkit-keyframes cub_1 {
  0% {
    -webkit-transform-origin: 50% 50% 0;
            transform-origin: 50% 50% 0;
    -webkit-transform: rotateX(0deg) translateZ(-113px);
            transform: rotateX(0deg) translateZ(-113px);
  }

  25% {
    -webkit-transform-origin: 50% 50% 0;
            transform-origin: 50% 50% 0;
    -webkit-transform: rotateX(-90deg) translateY(113px);
            transform: rotateX(-90deg) translateY(113px);
  }

  80% {
    -webkit-transform-origin: 50% 50% 0;
            transform-origin: 50% 50% 0;
    -webkit-transform: rotateX(-90deg) translateY(113px);
            transform: rotateX(-90deg) translateY(113px);
  }

  100% {
    -webkit-transform-origin: 50% 50% 0;
            transform-origin: 50% 50% 0;
    -webkit-transform: rotateX(0deg) translateZ(-113px);
            transform: rotateX(0deg) translateZ(-113px);
  }
}

@keyframes cub_1 {
  0% {
    -webkit-transform-origin: 50% 50% 0;
            transform-origin: 50% 50% 0;
    -webkit-transform: rotateX(0deg) translateZ(-113px);
            transform: rotateX(0deg) translateZ(-113px);
  }

  25% {
    -webkit-transform-origin: 50% 50% 0;
            transform-origin: 50% 50% 0;
    -webkit-transform: rotateX(-90deg) translateY(113px);
            transform: rotateX(-90deg) translateY(113px);
  }

  80% {
    -webkit-transform-origin: 50% 50% 0;
            transform-origin: 50% 50% 0;
    -webkit-transform: rotateX(-90deg) translateY(113px);
            transform: rotateX(-90deg) translateY(113px);
  }

  100% {
    -webkit-transform-origin: 50% 50% 0;
            transform-origin: 50% 50% 0;
    -webkit-transform: rotateX(0deg) translateZ(-113px);
            transform: rotateX(0deg) translateZ(-113px);
  }
}

@-webkit-keyframes cub_2 {
  0% {
    -webkit-transform-origin: 50% 50% 0;
            transform-origin: 50% 50% 0;
    -webkit-transform: rotateX(0deg) translateZ(-113px);
            transform: rotateX(0deg) translateZ(-113px);
  }

  25% {
    -webkit-transform-origin: 50% 50% 0;
            transform-origin: 50% 50% 0;
    -webkit-transform: rotateX(-90deg) translateY(113px);
            transform: rotateX(-90deg) translateY(113px);
  }

  80% {
    -webkit-transform-origin: 50% 50% 0;
            transform-origin: 50% 50% 0;
    -webkit-transform: rotateX(-90deg) translateY(113px);
            transform: rotateX(-90deg) translateY(113px);
  }

  100% {
    -webkit-transform-origin: 50% 50% 0;
            transform-origin: 50% 50% 0;
    -webkit-transform: rotateX(0deg) translateZ(-113px);
            transform: rotateX(0deg) translateZ(-113px);
  }
}

@keyframes cub_2 {
  0% {
    -webkit-transform-origin: 50% 50% 0;
            transform-origin: 50% 50% 0;
    -webkit-transform: rotateX(0deg) translateZ(-113px);
            transform: rotateX(0deg) translateZ(-113px);
  }

  25% {
    -webkit-transform-origin: 50% 50% 0;
            transform-origin: 50% 50% 0;
    -webkit-transform: rotateX(-90deg) translateY(113px);
            transform: rotateX(-90deg) translateY(113px);
  }

  80% {
    -webkit-transform-origin: 50% 50% 0;
            transform-origin: 50% 50% 0;
    -webkit-transform: rotateX(-90deg) translateY(113px);
            transform: rotateX(-90deg) translateY(113px);
  }

  100% {
    -webkit-transform-origin: 50% 50% 0;
            transform-origin: 50% 50% 0;
    -webkit-transform: rotateX(0deg) translateZ(-113px);
            transform: rotateX(0deg) translateZ(-113px);
  }
}

@-webkit-keyframes cub_3 {
  0% {
    -webkit-transform-origin: 50% 50% 0;
            transform-origin: 50% 50% 0;
    -webkit-transform: rotateX(0deg) translateZ(-113px);
            transform: rotateX(0deg) translateZ(-113px);
  }

  25% {
    -webkit-transform-origin: 50% 50% 0;
            transform-origin: 50% 50% 0;
    -webkit-transform: rotateX(-90deg) translateY(113px);
            transform: rotateX(-90deg) translateY(113px);
  }

  80% {
    -webkit-transform-origin: 50% 50% 0;
            transform-origin: 50% 50% 0;
    -webkit-transform: rotateX(-90deg) translateY(113px);
            transform: rotateX(-90deg) translateY(113px);
  }

  100% {
    -webkit-transform-origin: 50% 50% 0;
            transform-origin: 50% 50% 0;
    -webkit-transform: rotateX(0deg) translateZ(-113px);
            transform: rotateX(0deg) translateZ(-113px);
  }
}

@keyframes cub_3 {
  0% {
    -webkit-transform-origin: 50% 50% 0;
            transform-origin: 50% 50% 0;
    -webkit-transform: rotateX(0deg) translateZ(-113px);
            transform: rotateX(0deg) translateZ(-113px);
  }

  25% {
    -webkit-transform-origin: 50% 50% 0;
            transform-origin: 50% 50% 0;
    -webkit-transform: rotateX(-90deg) translateY(113px);
            transform: rotateX(-90deg) translateY(113px);
  }

  80% {
    -webkit-transform-origin: 50% 50% 0;
            transform-origin: 50% 50% 0;
    -webkit-transform: rotateX(-90deg) translateY(113px);
            transform: rotateX(-90deg) translateY(113px);
  }

  100% {
    -webkit-transform-origin: 50% 50% 0;
            transform-origin: 50% 50% 0;
    -webkit-transform: rotateX(0deg) translateZ(-113px);
            transform: rotateX(0deg) translateZ(-113px);
  }
}

@media (max-width: 1200px) {
  * a:hover {
    display: none;
  }
}
<!DOCTYPE html>
<html lang="ru">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link rel="stylesheet" href="css/style.css">
    <link rel="stylesheet" href="https://unpkg.com/swiper/swiper-bundle.min.css" />
    <title>Document</title>
</head>

<body>
    <main class="main-body">
        <section class="main">
            <div class="main__container container">
                <div class="main__animate">
                    <img src="img/logo.png" alt="">
                </div>
                <header class="header">
                    <div class="header__logo">
                        <img src="img/logo.png" alt="">
                    </div>
                    <nav class="header__nav nav">
                        <ul class="header__menu">
                            <li class="header__item"><a href="#" class="header__link">Арена</a></li>
                            <li class="header__item"><a href="#" class="header__link">ССГ</a></li>
                            <li class="header__item"><a href="#" class="header__link">Спортклуб в аренду</a></li>
                            <li class="header__item"><a href="#" class="header__link">Андромета</a></li>
                            <li class="header__item"><a href="#" class="header__link">Контакты</a></li>
                        </ul>
                    </nav>
                    <div class="header__contact">
                        <a class="header__tell" href="tel:+4843952424">(48439) 5-24-24</a>
                        <div class="header__mail">
                            <p>E-mail:</p>
                            <a href="mailto:[email protected]">[email protected]</a>
                        </div>
                    </div>
                </header>
            </div>
            <div class="main__slider slider">
                <div class="slider__container container">
                    <div class="slider__slide">
                        <div class="slider__item animate-1">
                            <div class="slider__img">
                                <img src="img/slide-1.jpg" alt="Photo">
                            </div>
                            <div class="slider__info arena">
                                <a href="#">
                                    <div class="slider__logo">
                                        <img src="img/logo-aren.svg" alt="logo">
                                    </div>
                                    <div class="slider__name">
                                        Бизнес Центр Арена
                                    </div>
                                    <div class="slider__descr">
                                        Новые офисы в аренду
                                    </div>
                                </a>
                            </div>
                        </div>
                    </div>
                    <div class="slider__slide">
                        <div class="slider__item animate-2">
                            <div class="slider__img">
                                <img src="img/slide-2.jpg" alt="Photo">
                            </div>
                            <div class="slider__info group">
                                <a href="#">
                                    <div class="slider__logo">
                                        <img src="img/logo-group.svg" alt="logo">
                                    </div>
                                    <div class="slider__name">
                                        Строй Сити Групп
                                    </div>
                                    <div class="slider__descr">
                                        Продажа и аренда коммерческих площадей
                                    </div>
                                </a>
                            </div>
                        </div>
                    </div>
                    <div class="slider__slide">
                        <div class="slider__item animate-3">
                            <div class="slider__img">
                                <img src="img/slide-3.jpg" alt="Photo">
                            </div>
                            <div class="slider__info club">
                                <a href="#">
                                    <div class="slider__name">
                                        Спортклуб в аренду
                                    </div>
                                </a>
                            </div>
                        </div>
                    </div>
                    <div class="slider__slide">
                        <div class="slider__item animate-4">
                            <div class="slider__img">
                                <img src="img/slide-4.jpg" alt="Photo">
                            </div>
                            <div class="slider__info andr">
                                <a href="#">
                                    <div class="slider__logo">
                                        <img src="img/logo-andr.svg" alt="logo">
                                    </div>
                                    <div class="slider__name">
                                        Андромета
                                    </div>
                                    <div class="slider__descr">
                                        Быстровозводимые здания для вашего бизнеса
                                    </div>
                                </a>
                            </div>
                        </div>
                    </div>
                </div>
            </div>
        </section>
    </main>
    <script src="https://unpkg.com/swiper/swiper-bundle.min.js"></script>
    <script src="js/script.js"></script>
</body>

</html>

Делаю блок с анимациями, внутри 4 одинаковых элемента которые анимируются с помошью эфекта куба, при этом каждый элемент останавливается и после этого стартует анимация второго элемента. Вопрос: Как сделать, что бы это все было еще и бесконечно?

/
/


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