今天用css写了个图片连续横向滚动,完成效果如下:
总共用了两张图,一张背景图,一张滚动图,html结构如下:
<div class="img-box"> <img src="背景图地址"> <div class="roll-img1"><img src="滚动图片地址"></div> <div class="roll-img2"><img src="滚动图片地址"></div> </div>
然后是css
/* 动画1 */ @keyframes rollimg1 { 0% { left: 0; } 100% { left: -100%; } } /* 动画1 */ @keyframes rollimg2 { 0% { left: 100%; } 100% { left: 0; } } /* 最外层 */ .img-box{ position: relative; overflow: hidden; } /* 背景图 */ .img-box>img{ display: block; position: relative; line-height: 1; width: 100%; height: auto; z-index: 1; } /* 最开始滚动的图片 */ .roll-img1{ position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 2; overflow: hidden; animation: rollimg1 12s infinite linear; display: flex; align-items: center; } /* 接着滚动的图片 */ .roll-img2{ position: absolute; top: 0; left: 100%; width: 100%; height: 100%; z-index: 2; overflow: hidden; animation: rollimg2 12s infinite linear; display: flex; align-items: center; }
以上就是用css的“@keyframes”动画效果来实现图片横向滚动的全部代码了,调节滚动速度修改“animation”里面的“12s”中的数字即可。