实现思路
首先创建一个父容器,用两个无序列表通过弹性布局将父容器分为两栏。在li里面存放图片通过给左边的li {background: url(‘图片地址’) no-repeat; background-size: 200% 100%;}给右边的li{background-position-x: -300(父容器宽度的一半)px;}来实现将图片分割成两栏。给ul中国的四大发明有哪些{ransform-style: prerve-3d; }属性来开启浏览器的3d显示。用子绝父相来将li叠放到一起ul{position: relative;} li {position: absolute;}。通过transform属性来设置li的旋转。到这里可以添报考驾照流程加.box:hover>ul { transition: all 5s;transform: rotatex(360deg); } 来看看效果。最后添加两个按钮来让用户可以自己切换图片。点击时只用改变ul的旋转角度btn1.onclick = ()=>{ item++; let r = item * 90; letf.style.transform = 'rotatex(' + r + 'deg)'; letf.style.transition = 'all 1s'; right.style.transform = 'rotatex(' + r + 'deg)'; right.style.transition = 'all 1s .3s'; } btn2.onclick = ()=>{ item--; let r = item * 90; letf.style.transform = 'rotatex(' + r + 'deg)'; letf.style.transition = 'all 1s'; right.style.transform = 'rotatex(' + r + 'deg)'; right.style.transition = 'all 1s .3s'; }
最后附上全部代码,希望对学习前端的你有所帮助
html代码
<!doctype html><html lang="en"><head> <meta chart="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <titl皮肤过敏不能吃什么e>切割轮播图</title></head><body> <div class="box"> <ul class="letf"> <li></li> <li></li> <li&高校最新商务英语gt;</li> <li></li> </ul> <ul class="right"> <li></li> <li></li> <li></li> <li></li> </ul> </div> <button id="btn1">上一页</button><button id="btn2">下一页</button></body></html>
css 代码
*{ margin: 0; padding: 0;}body{ perspective: 800px;}.box{ display: flex; width: 600px; height: 350px; margin: 150px auto;}.box:hover ul li:nth-child(1){ transition: all 5s; transform: rotatex(360deg);}ul{ flex: 1; list-style: none; padding: 0; margin: 0; transform-style: prerve-3d; /* 开启浏览器的3d显示 */ position: relative;}li{ width: 100%; height: 100%; position: absolute;}li:nth-child(1){ background: url('../images/9.jpg') no-repeat; background-size: 200% 100%; transform: translatez(175px);}li:nth-child(2){ background: url('../images/10.jpg') no-repeat; background-size: 200% 100%; transform: rotatex(90deg) translatez(175px);}li:nth-child(3){ background: url('../images/11.jpg') no-repeat; background-size: 200% 100%; transform: rotatex(180deg) translatez(175px);}li:nth-child(4){ background: url('../images/12.jpg') no-repeat; background-size: 200% 100%; transform: rotatex(-90deg) translatez(175px);}.right li{ background-position-x: -300px;}
js代码
let item = 0; let btn1 = document.getelementbyid('btn1'); let btn2 = document.getelementbyid('btn2'); let letf = doc经验交流会发言稿ument.querylector('.letf'); let right = document.querylector('.right') btn1.onclick = ()=>{ item++; let r = item * 90; letf.style.transform = 'rotatex(' + r + 'deg)'; letf.style.transition = 'all 1s'; right.style.transform = 'rotatex(' + r + 'deg)'; right.style.transition = 'all 1s .3s'; } btn2.onclick = ()=>{ item--; let r = item * 90; letf.style.transform = 'rotatex(' + r + 'deg)'; letf.style.transition = 'all 1s'; right.style.transform = 'rotatex(' + r + 'deg)'; right.style.transition = 'all 1s .3s'; }
到此这篇关于css3简易切割轮播图的实现代码的文章就介绍到这了,更多相关css3切割轮播图内容请搜索www.887551.com以前的文章或继续浏览下面的相关文章,希望大家以后多多支持www.887551.com!
本文发布于:2023-04-07 15:55:34,感谢您对本站的认可!
本文链接:https://www.wtabcd.cn/fanwen/zuowen/a1ebe903c80e0fe0ed860a958fa0a08e.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文word下载地址:CSS3简易切割轮播图的实现代码.doc
本文 PDF 下载地址:CSS3简易切割轮播图的实现代码.pdf
留言与评论(共有 0 条评论) |