CSS圖片輪滑是一種常見的網頁設計效果,可以在網頁中對圖片進行輪播、滑動等動態展示。下面介紹一種基于CSS實現的圖片輪滑的代碼。
<!DOCTYPE html> <html> <head> <title>圖片輪滑</title> <style> .wrapper{ width: 100%; height: 500px; overflow: hidden; /* 隱藏超出部分 */ position: relative; } .slider{ width: 300%; /* 圖片數量乘以100% */ height: 500px; position: absolute; left: 0; top: 0; } .slider img{ width: 33.333%; /* 圖片數量乘以33.333% */ height: 500px; float: left; } .slider img:nth-child(1){ /* 默認第一張圖片 */ margin-left: 0; } .slider img:nth-child(2){ margin-left: -33.333%; } .slider img:nth-child(3){ margin-left: -66.666%; } @keyframes slide{ /* 定義動畫 */ 0% { margin-left: 0; } 100% { margin-left: -200%; /* 圖片數量乘以200% */ } } .slider{ animation: slide 8s infinite; /* 動畫執行時間為8秒,無限循環 */ animation-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955); /* 動畫速度曲線 */ } </style> </head> <body> <div class="wrapper"> <div class="slider"> <img src="image1.jpg" alt=""> <img src="image2.jpg" alt=""> <img src="image3.jpg" alt=""> </div> </div> </body> </html>
以上代碼中,包含一個類名為wrapper的div容器和一個類名為slider的div容器,其中wrapper用于容納slider,設置其寬度和高度,并隱藏其超出部分,slider用于展示圖片,包含多張圖片并通過CSS的float屬性橫向排列,同時通過nth-child偽類設置每一張圖片的margin-left值,使圖片按順序排列,形成輪播效果。最后通過CSS的@keyframes規則定義動畫slide,控制slider在8秒時間內從margin-left為0移動到-200%,達到輪播效果,并通過animation-timing-function屬性設置動畫速度曲線。
總而言之,以上代碼提供了一種簡單、基于CSS的圖片輪播實現方式,可以方便地應用于網頁設計中。