CSS3層級輪播圖是一種常用的Web頁面展示方式,利用CSS3支持的動畫效果,實現卡片式輪播效果。下面我們來詳細介紹如何實現這種輪播效果。
.slider { position: relative; width: 100%; height: 350px; } .slider .slide { position: absolute; top: 0; left: 0; width: 100%; height: 100%; opacity: 0; transition: opacity 1s ease-in-out; } .slider .slide.active { opacity: 1; z-index: 1; } .slider .slide.last-active { z-index: 2; } .slider .slide:nth-child(1) { background: #FF6347; } .slider .slide:nth-child(2) { background: #3CB371; } .slider .slide:nth-child(3) { background: #87CEEB; }
上面是實現CSS3層級輪播圖的核心樣式代碼。首先我們給父容器.slider設置position: relative屬性,讓其成為定位容器。然后,我們把輪播圖中的每一張卡片.slide設置為定位容器,使用position:absolute使其覆蓋在.slider容器上面。我們通過opacity屬性實現輪播卡片的淡入淡出效果,并給其設置transition屬性讓其動畫更加自然。
當一個輪播卡片處于活動狀態.active時,我們給其設置opacity: 1;讓其顯示出來。同時,我們還需要把正在退出的輪播卡片.z-index設置比當前活動的輪播卡片低1,讓其逐漸淡出,而正在進入的輪播卡片.z-index設置比當前活動的輪播卡片高1,讓其逐漸淡入。通過這種方法,我們可以實現卡片效果的無縫切換。
最后,我們設置每個輪播卡片的背景顏色,并通過:nth-child屬性區分不同的卡片。這樣就完成了CSS3層級輪播圖的制作。