Slideshow to niemal nieodłączny element każdej strony internetowej. Niewątpliwie pokaz ciekawych zdjęć przykuje uwagę i zaciekawi większe grono internautów do zapoznania się ze szczegółami znajdującymi się na naszej witrynie. Jak zatem przygotować taki pokaz?
Slideshow w formie listy w HTML
Przygotujemy listę, w której kolejnym pozycjom będzie odpowiadać nowe zdjęcie.
<!DOCTYPE html>
<html>
<head>
<title>Slideshow</title>
</head>
<body>
<div class="slideshow">
<ul class="baner">
<li><span><a href="#"></a></span></li>
<li><span><a href="#"></a></span></li>
<li><span><a href="#"></a></span></li>
<li><span><a href="#"></a></span></li>
</ul>
</div>
</body>
</html>
Styl dla slideshow i animacja
Tak naprawdę, cała robota wykona się w pliku CSS3. Przygotujemy deklaracje m.in. ze ścieżkami do zdjęć, na koniec zdefiniujemy animację dla banera.
.slideshow { margin: 0px auto; max-width: 1920px; width: 100%; height: 450px; text-align: center; }
.baner { position: absolute; padding-left: 0; width: 100%; height: 450px; top: 0; left: 0; right: 0; z-index: 0; }
.baner li { list-style: none; }
.baner li a { display: block; max-width: 1920px; width: 100%; height: 450px; position: absolute; z-index: 1; text-indent: -9999em; }
.baner li span {
position: absolute;
width: 100%;
height: 100%;
top: 0;
left: 0;
color: transparent;
background-size: cover;
background-position: 50% 50%;
opacity: 0;
z-index: 0;
animation: imageAnimation 20s ease infinite 0s;
}
.baner li:nth-child(1) span {
background-image : url(../images/baner/baner1.jpg);
}
.baner li:nth-child(2) span {
background-image: url(../images/baner/baner2.jpg);
animation-delay: 5s;
}
.baner li:nth-child(3) span {
background-image : url(../images/baner/baner3.jpg);
animation-delay: 10s;
}
.baner li:nth-child(4) span {
background-image : url(../images/baner/baner4.jpg);
animation-delay: 15s;
}
@keyframes imageAnimation {
0% { opacity: 0;}
13% { opacity: 1;}
25% { opacity: 1;}
37% { opacity: 0;}
100% { opacity: 0;}
}
Efekt
Powinniśmy jednak pamiętać, że o ile slideshow będzie współpracować z najnowszymi przeglądarkami wspierającymi HTML5 i CSS3, to w starszych niestety nie będzie działał np. IE8.
2 odpowiedzi na “Slideshow”
Jak zmienić położenie i wielkość banera na jaką chcesz
W stylu dla klasy "baner" możemy zmienić szerokość (width). Domyślnie jest to 100%. Dla tej samej klasy możemy ustawić położenie za pomocą marginesów (np. margin: 0 auto).