首頁 >web前端 >css教學 >如何使用CSS實現滾動的圖片欄(附代碼)

如何使用CSS實現滾動的圖片欄(附代碼)

不言
不言原創
2018-09-25 17:52:253104瀏覽

這篇文章帶給大家的內容是關於如何使用CSS實現滾動的圖片欄(附程式碼),有一定的參考價值,有需要的朋友可以參考一下,希望對你有幫助。

在某些網站上可以經常看到有一些圖片進行持續不斷的滾動,這個效果可以透過css的動畫效果來實現。具體效果如下

主要原理是透過動畫向左移動。

首先給出兩組相同的圖片(同一行上),讓整體圖片向左移動一組圖片的長度,

這樣在動畫結束時會迅速還原到原來位置,而此時剛好與第二組圖片交替,看起來就像是一組圖片在不斷循環向左滾動。

具體步驟如下:

1、設定主體程式碼各處兩組一樣的圖片 

 <nav>
        <ul>
            <li><img src="Images/1 (2).jpg" alt=""></li>
            <li><img src="Images/2 (2).jpg" alt=""></li>
            <li><img src="Images/3 (2).jpg" alt=""></li>
            <li><img src="Images/1 (2).jpg" alt=""></li>
            <li><img src="Images/2 (2).jpg" alt=""></li>
            <li><img src="Images/3 (2).jpg" alt=""></li>
        </ul>
    </nav>

2、設置nav的大小,寬度為一組圖片相加的寬度,高度為圖片的高度。

 
        nav {
            width: 750px;
            height: 170px;
            border: 1px solid red;
            margin: 100px auto;
}

3、設定ul大小,寬度為nav的兩倍,高度與nav相同,指定動畫相關屬性

ul {
            width: 200%;
            height: 100%;
            animation: picmove 5s linear infinite forwards;
        }

4、定義動畫,主要向左移動一組圖片的長度

 @keyframes picmove {
            from {
                transform: translate(0);
            }
            to {
                transform: translate(-750px);
            }
        }

5、增加滑鼠懸停,動畫暫停的效果

ul:hover {
            animation-play-state: paused;
        }

6、最後給nav 增加overflow:hidden 使得超出的部分隱藏,這樣整體一組滾動的圖片欄就做好了

整體程式碼如下





    
    
    
    Document
    



    <nav>
        <ul>
            <li><img src="Images/1 (2).jpg" alt=""></li>
            <li><img src="Images/2 (2).jpg" alt=""></li>
            <li><img src="Images/3 (2).jpg" alt=""></li>
            <li><img src="Images/1 (2).jpg" alt=""></li>
            <li><img src="Images/2 (2).jpg" alt=""></li>
            <li><img src="Images/3 (2).jpg" alt=""></li>
        </ul>
    </nav>


以上是如何使用CSS實現滾動的圖片欄(附代碼)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn