怎么利用CSS实现图片轮播效果

这篇文章给大家分享的是有关怎么利用CSS实现图片轮播效果的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

10年积累的成都网站制作、成都做网站经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先网站设计后付款的网站建设流程,更有盐津免费网站建设让你可以放心的选择与我们合作。

理论基础

CSS3 animation 属性和 @keyframes 规则

主体思想

  • 准备相同大小的多个图片

  • 将要展示图片横排放在一个图片容器里面

  • 在图片容器外再加一个展示容器,展示容器大小为图片大小

  • 给图片容器添加自定义动画,在动画不同阶段设置递增的偏移值

注意事项

  • 动画效果分为切换和停留两部分

  • 自定义动画阶段与图片数量相关

  • 动画各阶段偏移值与图片大小相关

  • 本文中示例最后一个图片到第一个图片没有切换效果,一个思路是可以由最后一个图片再挨个切换到第一个图片

HTML


    
        
        
        
    

解析:
这里创建了三个 img 元素,img 元素外面是图片容器,图片容器外面是展示容器。

CSS

#container {
	width: 400px;
	height: 300px;
	overflow: hidden;
}
 
#photo {
	width: 1200px;
	animation: switch 5s ease-out infinite;
}
 
#photo > img {
	float: left;
	width: 400px;
	height: 300px;
}
 
@keyframes switch {
	0%, 25% {
		margin-left: 0;
	}
	35%, 60% {
		margin-left: -400px;
	}
	70%, 100% {
		margin-left: -800px;
	}
}

解析:

  • 展示容器大小和图片大小一致

  • 图片添加 float 效果,不用考虑麻烦的 margin 问题

  • 由于示例只有三个图片,所以添加了三个动画阶段,每一阶段都是通过设置递增的 margin-left 值达到切换的效果

  • 设置的动画阶段(如:35%~60%)是动画停留部分,和上一阶段空余时间(如25%~35%)即为动画切换部分,各部分时间长短需要自己把控

运行效果

怎么利用CSS实现图片轮播效果

感谢各位的阅读!关于“怎么利用CSS实现图片轮播效果”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!


网站栏目:怎么利用CSS实现图片轮播效果
本文路径:http://csdahua.cn/article/jsdhpj.html
扫二维码与项目经理沟通

我们在微信上24小时期待你的声音

解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流