您好,登錄后才能下訂單哦!
CSS怎么實現圖片輪播?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。
在css中,可以使用animation屬性和@keyframes規則來實現圖片輪播效果。只需要先使用@keyframes創建動畫;然后使用animation屬性設置動畫所需時間,速度以及次數等即可。
首先準備相同大小的多個圖片,將要展示圖片橫排放在一個圖片容器里面。在圖片容器外再加一個展示容器,展示容器大小為圖片大小,給圖片容器添加自定義動畫,在動畫不同階段設置遞增的偏移值。
動畫效果分為切換和停留兩部分,自定義動畫階段與圖片數量相關,動畫各階段偏移值與圖片大小相關。
本文中示例的是有第一個圖片切換到最后一張圖片。
HTML
<body> <div id="container"> <div id="photo"> <img src="images/1.jpg" /> <img src="images/2.jpg" /> <img src="images/3.jpg" /> </div> </div> </body>
解析:
這里創建了三個 img 元素,img 元素外面是圖片容器,圖片容器外面是展示容器。
CSS
<style type="text/css"> #container { width: 400px; overflow: hidden; } #photo { width: 1200px; animation: switch 5s ease-out infinite; } #photo > img { float: left; width: 400px; } @keyframes switch { 0%, 25% { margin-left: 0; } 35%, 60% { margin-left: -400px; } 70%, 100% { margin-left: -800px; } } </style>
效果圖:
解析:
展示容器大小和圖片大小一致;
圖片添加 float 效果,不用考慮麻煩的 margin 問題;
由于示例只有三個圖片,所以添加了三個動畫階段,每一階段都是通過設置遞增的 margin-left 值達到切換的效果;
設置的動畫階段(如:35%~60%)是動畫停留部分,和上一階段空余時間(如25%~35%)即為動畫切換部分,各部分時間長短需要自己把控。
看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。