这篇文章主要为大家展示了“如何使用纯css实现的无缝滚动”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何使用纯css实现的无缝滚动”这篇文章吧。
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>纯css实现的无缝滚动</title>
<meta name="keywords" content="">
<meta name="description" content="">
<style>
#outer{
width: 600px;
height: 200px;
overflow: hidden;
position: relative;
}
#inner{
overflow: hidden;
width: 1800px;
height: 200px;
position: absolute;
left: 0px;
top: 0px;
animation:move 10s cubic-bezier(0.36, 0.35, 1, 1) infinite;
}
#inner img{
width: 150px;
height: 200px;
float: left;
}
@keyframes move{
0%{left: 0px;}
100%{left: -900px;}
}
</style>
</head>
<body>
<div id="outer">
<div id="inner">
<img src="01.jpg" alt="">
<img src="02.jpg" alt="">
<img src="03.jpg" alt="">
<img src="04.jpg" alt="">
<img src="05.jpg" alt="">
<img src="06.jpg" alt="">
<img src="01.jpg" alt="">
<img src="02.jpg" alt="">
<img src="03.jpg" alt="">
<img src="04.jpg" alt="">
<img src="05.jpg" alt="">
<img src="06.jpg" alt="">
</div>
</div>
<button>000000000</button>
<button>11111111111</button>
<script>
/*var btn1=document.getElementsByTagName('button')[0];
var btn2=document.getElementsByTagName('button')[1];
var outer=document.getElementById('outer');
var inner=document.getElementById('inner');
outer.onmouseover=function (){
inner.style.animationPlayState='paused';
}
outer.onmouseleave=function (){
inner.style.animationPlayState='running';
}*/
</script>
</body>
</html>
一、结构搭建:
可以使用ul li结构抱着img (我这里比较省事 直接把img仍在了div里边),两次div,outer宽度小于内层inner的宽度便于改变内层left的值实现滚动。
二、滚动思想:
这里实现的无缝滚动,有两种基本的思想;
第一种:通过父元素的scrollLeft逐渐增加来实现;
第二种:通过css3的translate来实现,这里采用的第二种;
三、滚动动画实现:
主要运用animation动画:
下边两个button按钮用JS实现控制无缝滚动的走停(js代码注释掉了)
这是比较丑陋的CSS无缝滚动 ,喜欢的直接复制拿走!
以上是“如何使用纯css实现的无缝滚动”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。