Latar Belakang fullscreen Gambar Slideshow dengan CSS3


Latar Belakang fullscreen Gambar Slideshow dengan CSS3

Happy new year, semuanya! Hari ini kita akan membuat slideshow CSS-hanya latar belakang gambar fullscreen. Kami akan membuat transisi gambar yang berbeda dan juga membuat judul muncul menggunakan animasi CSS.

Free Website Builder

CSS3FullscreenSlideshow
Lihat demo sumber Unduh
Happy new year, semuanya! Hari ini kita akan membuat slideshow CSS-hanya latar belakang gambar fullscreen. Kami akan membuat transisi gambar yang berbeda dan juga membuat judul muncul menggunakan animasi CSS.
Gambar-gambar itu oleh Mark Sebastian dan mereka berlisensi di bawah Lisensi Creative Commons Attribution-Share Alike 2.0 Generik .
Catatan bahwa ini hanya akan bekerja di browser yang mendukung animasi CSS .
Tutorial ini merupakan bagian dari CSS3 percobaan terbaru kami, Anda dapat menemukan lebih dari mereka di sini:

Free Website Builder

Markup

 yang Kami akan menggunakan daftar unordered untuk slideshow dan kami akan menambahkan rentang untuk setiap gambar dan divisi dengan judul:

<span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left"><ul class="cb-slideshow"></span> <ul class="cb-slideshow"></span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left"><li></span> <li></span>
        <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left"><span>Image 01</span></span> <span> Gambar 01 </ span></span>
        <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left"><div></span> <div></span>
            <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left"><h3>re·lax·a·tion</h3></span> <h3> kembali longgar · · · tion sebuah </ h3></span>
        <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left"></div></span> </ Div></span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left"></li></span> </ Li></span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left"><li><!--...--></li></span> <li> <- ... -> </ li></span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left"><li><!--...--></li></span> <li> <- ... -> </ li></span>
<span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left"></ul></span> </ Ul></span>

Bentang akan menjadi elemen yang akan memiliki gambar latar belakang dari slideshow.

CSS

Gaya mari kita unordered list pertama. Ini akan diperbaiki dan kami akan meregangkan itu atas viewport. Kami juga akan menggunakan: setelah pseudo-elemen dalam rangka untuk menempatkan pola di atas gambar:

<span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">.cb-slideshow,</span> Cb-slideshow.</span>
<span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">.cb-slideshow:after {</span> Cb-slideshow: setelah {.</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">position: fixed;</span> posisi yang tetap;</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">width: 100%;</span> width: 100%;</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">height: 100%;</span> height: 100%;</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">top: 0px;</span> top: 0px;</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">left: 0px;</span> kiri: 0px;</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">z-index: 0;</span> z-index: 0;</span>
<span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">}</span> }</span>
<span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">.cb-slideshow:after {</span> Cb-slideshow: setelah {.</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">content: '';</span> isi:'';</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">background: transparent url(../images/pattern.png) repeat top left;</span> background: url transparan (.. / images / pattern.png) ulangi kiri atas;</span>
<span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">}</span> }</span>

Kami akan menggunakan pola titik yang berulang tapi Anda bisa juga menggunakan, misalnya, gradien css dengan transparansi beberapa.
Rentang yang akan berisi gambar slideshow akan diposisikan mutlak dan memiliki lebar dan tinggi 100%. Karena kita memiliki beberapa di dalam teks, kita akan membuat warna transparan karena kita tidak ingin melihatnya. Latar belakang ukuran properti nilai “cover” akan memastikan bahwa gambar latar belakang mencakup semua bidang elemen dan karena itu adalah ukuran layar, akan mencakup semua viewport terlihat. Opacity diatur ke 0. Kami kemudian akan mengubah itu dalam animasi kita:

aaa<span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">.cb-slideshow li span {</span> Cb-slideshow. Li span {</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">width: 100%;</span> width: 100%;</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">height: 100%;</span> height: 100%;</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">position: absolute;</span> position: absolute;</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">top: 0px;</span> top: 0px;</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">left: 0px;</span> kiri: 0px;</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">color: transparent;</span> warna: transparan;</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">background-size: cover;</span> background-size: sampul;</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">background-position: 50% 50%;</span> background-position: 50% 50%;</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">background-repeat: none;</span> background-repeat: none;</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">opacity: 0;</span> opacity: 0;</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">z-index: 0;</span> z-index: 0;</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">animation: imageAnimation 36s linear infinite 0s;</span> animasi: imageAnimation 36s linier tak terbatas 0s;</span>
<span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">}</span> }</span>

Animasi untuk rentang masing-masing akan berlangsung 36 detik dan menjalankan sejumlah inifinite kali. Tapi mari kita lihat rincian-sekali, pertama, kita akan gaya divisi dengan judul:

<span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">.cb-slideshow li div {</span> Cb-slideshow. Li div {</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">z-index: 1000;</span> z-index: 1000;</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">position: absolute;</span> position: absolute;</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">bottom: 30px;</span> bottom: 30px;</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">left: 0px;</span> kiri: 0px;</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">width: 100%;</span> width: 100%;</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">text-align: center;</span> text-align: center;</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">opacity: 0;</span> opacity: 0;</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">color: #fff;</span> color: # fff;</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">animation: titleAnimation 36s linear infinite 0s;</span> animasi: titleAnimation 36s linier tak terbatas 0s;</span>
<span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">}</span> }</span>
<span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">.cb-slideshow li div h3 {</span> Cb-slideshow li. Div h3 {</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">font-family: 'BebasNeueRegular', 'Arial Narrow', Arial, sans-serif;</span> font-family: 'BebasNeueRegular', 'Arial Narrow', Arial, sans-serif;</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">font-size: 240px;</span> font-size: 240px;</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">padding: 0;</span> padding: 0;</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">line-height: 200px;</span> line-height: 200px;</span>
<span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">}</span> }</span>

Animasi untuk divisi judul juga akan mengambil 36 detik.
Sekarang, kita akan menentukan gambar latar belakang untuk semua bentang dan delay animasi, sehingga setiap gambar tayangan slide berikut dan judul muncul setelah 6 detik dari sebelumnya:

<span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">.cb-slideshow li:nth-child(1) span {</span> Cb-slideshow li: nth-anak (1) rentang {.</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">background-image: url(../images/1.jpg)</span> background-image: url (../images/1.jpg)</span>
<span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">}</span> }</span>
<span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">.cb-slideshow li:nth-child(2) span {</span> Cb-slideshow li:. Nth-anak (2) rentang {</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">background-image: url(../images/2.jpg);</span> background-image: url (../images/2.jpg);</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">animation-delay: 6s;</span> animasi-delay: 6s;</span>
<span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">}</span> }</span>
<span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">.cb-slideshow li:nth-child(3) span {</span> Cb-slideshow li: nth-anak (3) rentang {.</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">background-image: url(../images/3.jpg);</span> background-image: url (../images/3.jpg);</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">animation-delay: 12s;</span> animasi-delay: 12s;</span>
<span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">}</span> }</span>
<span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">.cb-slideshow li:nth-child(4) span {</span> Cb-slideshow li:. Nth-anak (4) rentang {</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">background-image: url(../images/4.jpg);</span> background-image: url (../images/4.jpg);</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">animation-delay: 18s;</span> animasi-delay: 18 tahun;</span>
<span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">}</span> }</span>
<span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">.cb-slideshow li:nth-child(5) span {</span> Cb-slideshow li:. Nth-anak (5) rentang {</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">background-image: url(../images/5.jpg);</span> background-image: url (../images/5.jpg);</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">animation-delay: 24s;</span> animasi-delay: 24s;</span>
<span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">}</span> }</span>
<span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">.cb-slideshow li:nth-child(6) span {</span> Cb-slideshow li:. Nth-anak (6) rentang {</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">background-image: url(../images/6.jpg);</span> background-image: url (../images/6.jpg);</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">animation-delay: 30s;</span> animasi-delay: 30-an;</span>
<span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">}</span> }</span>
<span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">.cb-slideshow li:nth-child(2) div {</span> Cb-slideshow li:. Nth-anak (2) div {</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">animation-delay: 6s;</span> animasi-delay: 6s;</span>
<span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">}</span> }</span>
<span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">.cb-slideshow li:nth-child(3) div {</span> Cb-slideshow li:. Nth-anak (3) div {</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">animation-delay: 12s;</span> animasi-delay: 12s;</span>
<span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">}</span> }</span>
<span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">.cb-slideshow li:nth-child(4) div {</span> Cb-slideshow li:. Nth-anak (4) div {</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">animation-delay: 18s;</span> animasi-delay: 18 tahun;</span>
<span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">}</span> }</span>
<span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">.cb-slideshow li:nth-child(5) div {</span> Cb-slideshow li:. Nth-anak (5) div {</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">animation-delay: 24s;</span> animasi-delay: 24s;</span>
<span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">}</span> }</span>
<span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">.cb-slideshow li:nth-child(6) div {</span> Cb-slideshow li: nth-anak (6) div {.</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">animation-delay: 30s;</span> animasi-delay: 30-an;</span>
<span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">}</span> }</span>

Sekarang, mari kita lihat animasi slideshow. Rentang masing-masing akan memiliki waktu animasi dari 36 detik. Dalam 36 detik kita akan mengubah opacity dari 0 ke 1 ketika animasi mencapai 8%. Dan kemudian opacity ini akan disimpan sampai 17% tercapai. Ketika mencapai 25% opacity sudah harus 0 lagi dan tetap seperti itu sampai akhir.
Sekarang, mengapa nilai-nilai tersebut? Kami ingin setiap gambar akan terlihat selama 6 detik dan kita tahu bahwa pada akhir siklus, kita ingin gambar pertama yang menunjukkan lagi. Kami memiliki 6 gambar, maka kita akan membutuhkan 36 detik untuk seluruh siklus sampai akhir. Sekarang, kita perlu “waktu” nilai opacity sesuai. Mengetahui bahwa gambar kedua kita akan mulai menghidupkan pada 6 detik, kita perlu tahu apa persentil dari animasi ini akan membutuhkan gambar pertama untuk kembali pingsan. Membagi 6 sebesar 36 memberi kita 0,166 … yang akan menjadi 16% untuk langkah keyframe kita. Sekarang, karena kita tidak ingin citra kami hanya memudar sepanjang waktu, kami akan menentukan langkah inbetween, yang akan kita set setengah dari apa yang kita dihitung, yaitu 8%. Itulah titik yang kita ingin menampilkan gambar lengkap dan kita hanya ingin mulai memudar keluar sebesar 17%, sehingga hilang sepenuhnya pada 25%.

<span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">@keyframes imageAnimation {</span> @ Keyframes imageAnimation {</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">0% { opacity: 0; animation-timing-function: ease-in; }</span> 0% {opacity: 0; animasi-waktu-fungsi: kemudahan-in;}</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">8% { opacity: 1; animation-timing-function: ease-out; }</span> 8% {opacity: 1; animasi-waktu-fungsi: kemudahan-out;}</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">17% { opacity: 1 }</span> 17% {opacity: 1}</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">25% { opacity: 0 }</span> 25% {opacity: 0}</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">100% { opacity: 0 }</span> 100% {opacity: 0}</span>
<span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">}</span> }</span>

Kami memiliki alasan yang sama untuk judul, hanya saja kita ingin menghilang sedikit lebih cepat, maka 0 opacity 19%:

<span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">@keyframes titleAnimation {</span> @ Keyframes titleAnimation {</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">0% { opacity: 0 }</span> 0% {opacity: 0}</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">8% { opacity: 1 }</span> 8% {opacity: 1}</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">17% { opacity: 1 }</span> 17% {opacity: 1}</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">19% { opacity: 0 }</span> 19% {opacity: 0}</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">100% { opacity: 0 }</span> 100% {opacity: 0}</span>
<span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">}</span> }</span>

Untuk browser yang tidak mendukung animasi, kita hanya akan menampilkan gambar tayangan slide terakhir dengan mengatur opacity dari rentang ke 1:

<span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">.no-cssanimations .cb-slideshow li span{</span> No-cssanimations.. Cb-slideshow li span {</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">opacity: 1;</span> opacity: 1;</span>
<span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">}</span> }</span>

Kelas tidak-cssanimations ditambahkan oleh Modernizr .
Mari kita juga menjaga ukuran font judul ketika viewport lebih kecil. Kami akan menggunakan query Media untuk mengatur ukuran font yang lebih kecil dengan lebar tertentu:

<span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">@media screen and (max-width: 1140px) {</span> @ Media screen dan (max-width: 1140px) {</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">.cb-slideshow li div h3 { font-size: 140px }</span> . Cb-slideshow li div h3 {font-size: 140px}</span>
<span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">}</span> }</span>
<span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">@media screen and (max-width: 600px) {</span> @ Media screen dan (max-width: 600px) {</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">.cb-slideshow li div h3 { font-size: 80px }</span> . Cb-slideshow li div h3 {font-size: 80px}</span>
<span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">}</span> }</span>

Dan itu semua untuk versi sederhana dari slideshow! Sekarang, mari kita lihat bagaimana kita dapat membumbui transisi sedikit.

Alternatif animasi contoh

Sekarang, kami bisa bermain sedikit dengan animasi untuk menampilkan gambar dan judulnya.
Animasi berikut ini akan membuat skala gambar sedikit dan putar sedikit:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">@keyframes imageAnimation {</span> @ Keyframes imageAnimation {</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">0% {</span> 0% {</span>
        <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">opacity: 0;</span> opacity: 0;</span>
        <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">animation-timing-function: ease-in;</span> animasi-waktu-fungsi: kemudahan dalam;</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">}</span> }</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">8% {</span> 8% {</span>
        <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">opacity: 1;</span> opacity: 1;</span>
        <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">transform: scale(1.05);</span> transform: skala (1,05);</span>
        <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">animation-timing-function: ease-out;</span> animasi-waktu-fungsi: kemudahan-out;</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">}</span> }</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">17% {</span> 17% {</span>
        <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">opacity: 1;</span> opacity: 1;</span>
        <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">transform: scale(1.1) rotate(3deg);</span> transform: skala (1.1) rotate (3deg);</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">}</span> }</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">25% {</span> 25% {</span>
        <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">opacity: 0;</span> opacity: 0;</span>
        <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">transform: scale(1.1) rotate(3deg);</span> transform: skala (1.1) rotate (3deg);</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">}</span> }</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">100% { opacity: 0 }</span> 100% {opacity: 0}</span>
<span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">}</span> }</span>

Judul akan slide dalam dari kanan (kita harus mengubah text-align untuk divisi judul untuk “benar”), dan menghilang dengan menggeser ke kiri dan fading out:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">@keyframes titleAnimation {</span> @ Keyframes titleAnimation {</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">0% {</span> 0% {</span>
        <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">opacity: 0;</span> opacity: 0;</span>
        <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">transform: translateX(200px);</span> Transformasi: translateX (200px);</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">}</span> }</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">8% {</span> 8% {</span>
        <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">opacity: 1;</span> opacity: 1;</span>
        <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">transform: translateX(0px);</span> Transformasi: translateX (0px);</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">}</span> }</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">17% {</span> 17% {</span>
        <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">opacity: 1;</span> opacity: 1;</span>
        <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">transform: translateX(0px);</span> Transformasi: translateX (0px);</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">}</span> }</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">19% {</span> 19% {</span>
        <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">opacity: 0;</span> opacity: 0;</span>
        <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">transform: translateX(-400px);</span> Transformasi: translateX (-400px);</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">}</span> }</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">25% { opacity: 0 }</span> 25% {opacity: 0}</span>
    <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">100% { opacity: 0 }</span> 100% {opacity: 0}</span>
<span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">}</span> }</span>

Ada banyak kemungkinan untuk transisi gambar dan judul, hanya percobaan!

Demo

Di sini Anda dapat menemukan beberapa demo dengan animasi alternatif:

  1. Demo 1: Sederhana Fade in, fade out
  2. Demo 2: Sedikit rotasi, slide judul dari kanan
  3. Demo 3: Gambar bergerak naik, judul bergerak ke bawah
  4. Demo 4: skala Gambar, judul bergerak naik, skala dan memudar

Saat ini, animasi yang halus di broswers WebKit seperti Chrome dan terutama Safari.
Saya harap anda menikmati tutorial ini dan merasa berguna dan inspiratif!
Lihat demo sumber Unduh

Pos ini dipublikasikan di slide show. Tandai permalink.

Tinggalkan komentar