Фотографии меняются в циклическом порядке

Падение сверху

Первая фотография в этом примере используется 2 раза, чтобы определить ее пропорции

Этот вариант можно протестировать на codepen

Поворот с прозрачностью

Этот вариант можно протестировать на codepen

Увеличение

Этот вариант можно протестировать на codepen

Горизонтальное вращение

Для вертикального нужно заменить rotateY на rotateX

Фильтр с прозрачностью

Смена фотографий через фильтр с добавлением прозрачности. В примере используется brightness, но можно выбрать и любой другой фильтр

Смотрите также:

Красивая смена фоновых изображений по клику с использованием WebGL

Фотография, двигающаяся за курсором, пока он находится на заданном слове

CSS-анимация с качающимися фоторамками

Добавить комментарий:

Ваш комментарий отправлен!

Комментарии:

  • Алексей:

    Добрый день.
    Подскажите в последний вариант "Фильтр с прозрачностью" как добавить ещё два фото, чтобы они тоже ротировались.
    Добавляю строками <div class="photo-3"> и 4 +
    .photo-container .photo-3 {
    position: absolute;
    top: 0;
    animation: brightness 10s linear 10s infinite;
    }
    Но ни 3, ни 4 не показываются или показываются, но вместо первых двух...

    Ответить
    • Alexander:

      Тут нужно будет менять проценты в анимации, ее продолжительность и задержку.
      В этой [url="https://atuin.ru/blog/slajder-s-menyayushhimisya-foto-na-css/"]теме[/url] можно посмотреть, как считаются они

      Ответить
  • Евгений:

    Привет. Покажите на одном примере, как запустить вашу анимацию при hover. Что никак не выходит.

    Ответить
    • Alexander:

      На 3 примере:
      Удаляем вызов анимации
      [code]animation: scale 10s linear 5s infinite;[/code]
      и
      [code]animation: scale 10s linear infinite;[/code]
      и добавляем:
      [code].photo-container-3:hover .photo-1 {
      animation: scale 10s linear infinite;
      z-index: 1;
      }
      .photo-container-3:hover .photo-2 {
      animation: scale 10s linear 5s infinite;
      }[/code]

      Ответить
    • Alexander:

      Еще 1 вариант - это использовать [b]animation-play-state[/b]
      Для классов
      [b].photo-container-3 .photo-1 [/b]и [b].photo-container-3 .photo-2[/b] добавляем
      [code]animation-play-state: paused;[/code]
      и запускаем их по ховеру:
      [code].photo-container-3:hover .photo-1 {
      animation-play-state: running;
      }
      .photo-container-3:hover .photo-2 {
      animation-play-state: running;
      }[/code]

      Ответить
      • Евгений:

        Спасибо. Понятно. Тут дело оказывается ещё и в последовательности правил. Не нашёл ещё как убрать задержку. Так как получается при наведении она ждёт несколько секунд. Я делаю 4-ый пример.

        Ответить
  • lapsha:

    Я вот воспользовался последним вариантом, но проблема в том, что мне нужно остановить цикл смены изображений и зафиксироваться на втором слайде, но никак не пойму как это можно сделать ?

    Ответить
    • Alexander:

      Т.е. сменить 1 раз фото и все?
      Если так, то заменяем классы на:

      [code].photo-container-5 .photo-1 {
      position: relative;
      }
      .photo-container-5 .photo-2 {
      position: absolute;
      top: 0;
      animation: brightness 10s linear 1;
      }
      @keyframes brightness {
      0% {
      opacity: 0;
      }
      90% {
      opacity: 0;
      filter: none
      }
      95% {
      filter: brightness(10);
      }
      100% {
      opacity: 1;
      }
      }
      [/code]
      Только в этот момент фотка может находиться за пределами экрана.

      Ответить
      • lapsha:

        Это то, что было нужно ! спасибо !

        Ответить