css3旋转木马轮播图,3D旋转木马轮播图(原创)

body {

perspective:1000px;

/* 透视要加到父级元素 */

}

section {

position:relative;

width:300px;

height:200px;

margin:150px auto;

transform-style:preserve-3d;

animation:rotate 16s linear infinite;

background:url("https://www.jq22.com/img/cs/500x500-1.png");

}

section:hover {

/* 鼠标移入时暂停动画 */

animation-play-state:paused;

}

@keyframes rotate {

0% {

transform:rotateY(0deg);

}

100% {

transform:rotateY(360deg);

}

}section div {

position:absolute;

top:0;

left:0;

width:100%;

height:100%;

/* background:url("images/fc08.png") no-repeat;

这里背景图是开始做的参考,会被body里的img覆盖了,实际上没有用了 */

}

section div:nth-child(1) {

transform:translateZ(300px);

}

section div:nth-child(2) {

transform:rotateY(60deg) translateZ(300px);

/* 这里要先旋转好了,在移动距离 */

}

section div:nth-child(3) {

transform:rotateY(120deg) translateZ(300px);

/* 这里要先旋转好了,在移动距离 */

}

section div:nth-child(4) {

transform:rotateY(180deg) translateZ(300px);

/* 这里要先旋转好了,在移动距离 */

}

section div:nth-child(5) {

transform:rotateY(240deg) translateZ(300px);

}

section div:nth-child(6) {

transform:rotateY(300deg) translateZ(300px);

}

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
CSS3旋转木马可以通过使用CSS3动画和@keyframes关键帧来实现自动放,具体步骤如下: 1. 创建一个外层容器,设置其宽度和高度,设置overflow为hidden,使得内部元素溢出隐藏。 2. 创建一个内层容器,设置其宽度为外层容器的几倍,并且将其中的每个轮项横向排列。 3. 使用transform属性的rotateY函数将内层容器绕Y轴旋转,实现旋转木马效果。同时,使用transition属性设置旋转动画的过渡时间和过渡方式。 4. 使用@keyframes关键帧来定义内层容器的自动旋转动画,即从起始状态旋转到结束状态。 5. 使用JavaScript代码来控制内层容器的旋转动画,实现自动放效果。可以使用setInterval或者setTimeout函数来控制旋转时间和自动放的间隔时间。 下面是一个示例代码,具体实现方式可能因需求和设计而异: HTML代码: ``` <div class="carousel"> <div class="carousel-inner"> <div class="carousel-item"><img src="1.jpg"></div> <div class="carousel-item"><img src="2.jpg"></div> <div class="carousel-item"><img src="3.jpg"></div> <div class="carousel-item"><img src="4.jpg"></div> </div> </div> ``` CSS代码: ``` .carousel { width: 600px; height: 400px; position: relative; overflow: hidden; } .carousel-inner { width: 2400px; /* 每个轮项宽度为600px,总宽度为600*4=2400 */ height: 100%; position: absolute; top: 0; left: 0; transform-style: preserve-3d; animation: rotateCarousel 12s infinite; transition: transform 1s ease-in-out; } .carousel-item { width: 600px; height: 400px; position: relative; display: inline-block; } .carousel-item img { width: 100%; height: 100%; } @keyframes rotateCarousel { from { transform: translateZ(-1200px) rotateY(0deg); } to { transform: translateZ(-1200px) rotateY(-360deg); } } ``` JavaScript代码: ``` var carouselInner = document.querySelector('.carousel-inner'); var angle = 0; setInterval(function() { angle -= 90; // 每次旋转90度 carouselInner.style.transform = 'translateZ(-1200px) rotateY(' + angle + 'deg)'; }, 3000); // 每隔3秒自动旋转一次 ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值