In questo tutorial creiamo uno slideshow di immagini solo in CSS3. Ricordate che questo tutorial funziona, per adesso, su Chrome e Safari.
Iniziamo subito!
Dobbiamo creare due liste non ordinate, nel nostro codice Html, una per le miniature e una per le immagini piu’ grandi:
Adesso vediamo il CSS associato per posizionare tutti i nostri elementi.
.slider-wrapper ul, .slider-wrapper li, .slider-wrapper div, .slider-wrapper img, .slider-wrapper a { margin: 0; padding: 0; border: none; outline: none; list-style: none; } .slider-wrapper { width: 508px; overflow: hidden; } ul.s-thumbs li { float: left; } ul.s-slides, ul.s-slides li, ul.s-slides a, ul.s-slides img { width: 500px; height: 350px; position: relative; } ul.s-slides { overflow: hidden; clear: both; } ul.s-slides li { position: absolute; z-index: 50; }Ecco il nostro risultato fino qui:
Adesso miglioriamo il tutto grazie al CSS3 con l’uso di angoli arrotondati e ombre.
ul.s-thumbs li { float: left; margin-bottom: 10px; margin-right: 11px; } ul.s-thumbs li:last-child { margin-left: 1px; margin-right: 0; } ul.s-thumbs a { display: block; position: relative; width: 55px; height: 55px; border: 4px solid transparent; -webkit-transition: all 0.25s ease-in-out; -moz-transition: all 0.25s ease-in-out; -o-transition: all 0.25s ease-in-out; -ms-transition: all 0.25s ease-in-out; transition: all 0.25s ease-in-out; font: bold 12px/25px Arial, sans-serif; color: #515151; text-decoration: none; text-shadow: 1px 1px 0px rgba(255,255,255,.25), inset 1px 1px 0px rgba(0,0,0,.15); } ul.s-thumbs img { -webkit-box-shadow: 1px 1px 5px rgba(0,0,0,.5); -moz-box-shadow: 1px 1px 5px rgba(0,0,0,.5); box-shadow: 1px 1px 5px rgba(0,0,0,.5); } ul.s-thumbs a:hover, ul.s-slides { border: 4px solid #141517; -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px; -webkit-box-shadow: 0px 1px 0px rgba(255,255,255,.05); -moz-box-shadow: 0px 1px 0px rgba(255,255,255,.05); box-shadow: 0px 1px 0px rgba(255,255,255,.05); }Ecco il risultato
Se volessimo aggiungere una descrizione alla miniatura, ecco il codice in Html:
Alla prossima!