Доверьте продвижение нам

Попробуйте надежный хостинг для вашего сайта

Мы рекомендуем своим клиентам! Получите надежность и полное управление вашим сайтом.

Комментарии

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *

от 1 499 098 

Как сделать красивый слайдер с анимацией css

Views Icon28

Создание красивого слайдера с анимацией в CSS предполагает использование свойств CSS, таких как overflowpositiontransform и animation. Вот пример стилизации слайдера:

HTML:

<div class="slider">
  <div class="slide active">
    <img src="slide1.jpg" alt="Slide 1">
    <div class="slide-caption">
      <h2>Slide 1</h2>
      <p>Some text here</p>
    </div>
  </div>
  <div class="slide">
    <img src="slide2.jpg" alt="Slide 2">
    <div class="slide-caption">
      <h2>Slide 2</h2>
      <p>Some text here</p>
    </div>
  </div>
  <div class="slide">
    <img src="slide3.jpg" alt="Slide 3">
    <div class="slide-caption">
      <h2>Slide 3</h2>
      <p>Some text here</p>
    </div>
  </div>
</div>

CSS:

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

.slide {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  transition: opacity 0.5s;
}

.slide.active {
  opacity: 1;
}

.slide img {
  max-width: 100%;
  height: auto;
}

.slide-caption {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
  color: #fff;
  z-index: 1;
  animation-name: caption-animation;
  animation-duration: 1s;
  animation-fill-mode: forwards;
  opacity: 0;
  transition: opacity 0.5s;
}

.slide.active .slide-caption {
  opacity: 1;
}

.slide-caption h2 {
  font-size: 2rem;
  margin-bottom: 0.5rem;
}

.slide-caption p {
  font-size: 1rem;
}

@keyframes caption-animation {
  from {
    transform: translate(-50%, -40%);
    opacity: 0;
  }
  to {
    transform: translate(-50%, -50%);
    opacity: 1;
  }
}

В этом примере мы использовали свойство position: relative для контейнера слайдера и overflow: hidden, чтобы скрыть все слайды, кроме активного, которые будут показаны пользователю. position: absolute было применено ко всем слайдам для создания эффекта перекрытия их друг друга.

Фоновое изображение каждого слайда было задано через тег img. Текстовые элементы (h2p) были помещены в блок .slide-caption, который был выровнен по центру каждого слайда с помощью свойства transform.

Анимация текста была создана через CSS-анимацию с помощью animation-nameanimation-duration и animation-fill-mode. В нашем примере мы использовали opacity для плавного появления и исчезновения элементов.

Наконец, мы добавили некоторый JavaScript код для переключения активного слайда. Код может выглядеть примерно так:

var slides = document.getElementsByClassName('slide');
var currentIndex = 0;
setInterval(function() {
  slides[currentIndex].classList.remove('active');
  currentIndex++;
  if (currentIndex === slides.length) {
    currentIndex = 0;
  }
  slides[currentIndex].classList.add('active');
}, 5000);

Этот код будет переключать слайды каждые 5 секунд (5000 миллисекунд) и переключает класс .active между активным и неактивным слайдами.

Поделиться:

Задать вопрос

Оставляя заявку, вы соглашаетесь с политикой обработки персональных данных.

Оставить заявку

Оставляя заявку, вы соглашаетесь с политикой обработки персональных данных.