css3水平無縫滾動效果
之前實現無縫滾動大多結合js,例如水平無縫滾動程式碼詳解一章節。
下面分享一個完全使用css3實現的水平無縫滾動效果。
程式碼例項如下:
[HTML] 純文字檢視 複製程式碼執行程式碼<!doctype html> <html> <head> <meta charset="utf-8"> <meta name="author" content="http://www.softwhy.com/" /> <title>螞蟻部落</title> <style> #wrap { width: 500px; height: 100px; border: 1px solid #000; position: relative; margin: 100px auto; overflow: hidden; } #list { position: absolute; left: 0; top: 0; margin: 0; padding: 0; -webkit-animation: 3s move infinite linear; width: 200%; } #list li { list-style: none; width: 98px; height: 98px; border: 1px solid #fff; background: #000; color: #fff; font: 50px/98px Arial; text-align: center; float: left; } @keyframes move { 0% { left: 0; } 100% { left: -500px; } } #wrap:hover #list { -webkit-animation-play-state: paused; } </style> </head> <body> <div id="wrap"> <ul id="list"> <li>1</li> <li>2</li> <li>3</li> <li>4</li> <li>5</li> <li>1</li> <li>2</li> <li>3</li> <li>4</li> <li>5</li> </ul> </div> </body> </html>
上面程式碼實現水平無縫滾動效果,下面介紹一下它的實現過程。
一.程式碼註釋:
[CSS] 純文字檢視 複製程式碼#wrap { width: 500px; height: 100px; border: 1px solid #000; position: relative; margin: 100px auto; overflow: hidden; }
最外層的元素,寬度為500px,高度為100px。
採用相對定位,這一點很重要,後面有介紹。
margin: 100px auto將其設定為水平居中。
overflow: hidden將設定超出它的元素被隱藏。
[CSS] 純文字檢視 複製程式碼#list { position: absolute; left: 0; top: 0; margin: 0; padding: 0; animation: 3s move infinite linear; width: 200%; }
設定它為相對定位,定位參考物件是它的父元素,因為父元素設定了相對定位。
並且設定left、top、margin和padding為0,那麼預設左對齊父元素。
animation: 3s move infinite linear,進行動畫效果。
width: 200%設定它的尺寸恰好是父元素的2倍,看HTML結構:
[HTML] 純文字檢視 複製程式碼<ul id="list"> <li>1</li> <li>2</li> <li>3</li> <li>4</li> <li>5</li> <li>1</li> <li>2</li> <li>3</li> <li>4</li> <li>5</li> </ul>
重複2次12345,這樣可以保證水平滾動連續性效果,否則後面會出現空白。
[CSS] 純文字檢視 複製程式碼@keyframes move { 0% { left: 0; } 100% { left: -500px; } }
動畫方式設定left屬性值,最小left屬性值是-500px,恰好是完成一次12345的運動,由於後面還有一個重複的12345,所以就在視覺上實現了無縫水平滾動效果。
[CSS] 純文字檢視 複製程式碼#wrap:hover #list { animation-play-state: paused; }
滑鼠懸浮會暫停動畫效果。
二.相關閱讀:
(1).相對定位參閱CSS position:relative 相對定位一章節。
(2).絕對定位參閱CSS position:absolute 絕對定位一章節。
(3).animation參閱CSS3 animation一章節。
相關文章
- CSS水平無縫滾動效果CSS
- JavaScript水平無縫滾動程式碼JavaScript
- jQuery圖片無縫滾動效果jQuery
- js無縫滾動JS
- js、jQuery實現文字上下無縫輪播、滾動效果JSjQuery
- CSS3 div水平運動效果CSSS3
- js-字幕無縫滾動JS
- JavaScript無縫滾動 記錄JavaScript
- HTMl 中marquee標籤實現無縫滾動跑馬燈效果HTML
- jQuery 間歇的無縫滾動jQuery
- react無縫滾動輪播圖React
- 向上無縫滾動--原理及思想
- CSS3滾動條效果程式碼CSSS3
- CSS實現迴圈無縫滾動CSS
- JavaFx 實現水平滾動文字(跑馬燈效果)Java
- jQuery 圖片列表垂直間歇無縫滾動jQuery
- JavaScript圖片橫向無縫滾動詳解JavaScript
- JQuery實現圖片輪播無縫滾動jQuery
- CSS3熱身實戰–過渡與動畫(實現炫酷下拉,手風琴,無縫滾動)CSSS3動畫
- 單行新聞公告間歇垂直無縫滾動
- 直播系統原始碼,vue實現無縫滾動原始碼Vue
- div滾動條樣式,水平滾動
- vue無縫滾動的外掛開發填坑分享Vue
- H5移動端獲獎無縫滾動動畫實現H5動畫
- 隱藏滾動條保留滾動效果
- ant design 錨點採坑一 無滾動效果
- 邏輯難理解版本的輪播圖(實現無縫滾動)
- 怎樣用原生js配合css的transition寫個無縫滾動JSCSS
- 如何開發一款 60fps 的“無縫滾動”外掛
- 新聞單條無縫間歇向上滾動(第一次分享)
- canvas水平勻速運動效果Canvas
- 如何快速實現一個無縫輪播效果
- 【譯】定製Flutter滾動效果Flutter
- 前端實現文字滾動效果前端
- CSS完成視差滾動效果CSS
- CSS3動畫按鈕效果CSSS3動畫
- css3小球上下移動效果CSSS3
- 左右帶有按鈕圖片水平滾動
- css3動畫效果抖動解決CSSS3動畫