css实现三面立体旋转无限轮播图动画(代码示例)

本篇文章给大家介绍css实现三面立体旋转无限轮播图动画(代码示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所帮助。

在之前的文章【css如何实现无限轮播图动画】里介绍横向播放的无限轮播图动画(如下图),本文我们将在之前的基础上进行修改,实现不一样的轮播图动画。

1.gif

三面立体旋转的轮播图

通过一些小的改动,我们可以使用不同的多边形形状用于图像轮,以及更大的图像,从而产生不同的效果。在这种情况下,图像是两倍大并且放置在使用较少空间的三角形布置中。序列中仍然有八张相同的照片:

2.gif

使用Firefox,你会看到动画也在运行。除了额外的JavaScript代码,并用-moz替换 -webkit,我们必须添加-moz-transform-style:preserve-3d; 到css的#rotator a里, 因为它没有被继承(从Firefox v12开始)。

立即学习“前端免费学习笔记(深入)”;

这个例子略有变化,我们正在将照片从队列的前面移动到后面。在前一种情况下,我们将它们从队列的后面移动到前面。

为此,我们将把:

target.insertBefore(arr[arr.length-1], arr[0]);

变成:

target.appendChild(arr[0]);

下面放上完整代码:

html代码:

css代码:

 #stage3 {    margin: 2em auto 1em 50%;    height: 240px;    -webkit-perspective: 1200px;    -webkit-perspective-origin: 0 90px;    -moz-perspective: 1200px;    -moz-perspective-origin: 0 90px;    -ms-perspective: 1200px;    -ms-perspective-origin: 0 90px;  }  #rotator3 a {    position: absolute;    left: -151px;    -moz-transform-style: preserve-3d;  }  #rotator3 a img {    padding: 10px;    border: 1px solid #ccc;    background: #fff;    -webkit-backface-visibility: hidden;    -moz-backface-visibility: hidden;    -ms-backface-visibility: hidden;  }  #rotator3 a:nth-of-type(1) img {    -webkit-transform: rotateX(-90deg) translateZ(100px);    -moz-transform: rotateX(-90deg) translateZ(100px);    -ms-transform: rotateX(-90deg) translateZ(100px);  }  #rotator3 a:nth-of-type(2) img {    -webkit-transform: translateZ(100px);    -moz-transform: translateZ(100px);    -ms-transform: translateZ(100px);  }  #rotator3 a:nth-of-type(3) img {    -webkit-transform: rotateX(90deg) translateZ(100px);    -moz-transform: rotateX(90deg) translateZ(100px);    -ms-transform: rotateX(90deg) translateZ(100px);  }  #rotator3 a:nth-of-type(n+4) { display: none; }  @-webkit-keyframes rotator3 {    from { -webkit-transform: rotateX(0deg);  }    to   { -webkit-transform: rotateX(90deg); }  }  @-moz-keyframes rotator3 {    from { -moz-transform: rotateX(0deg);  }    to   { -moz-transform: rotateX(90deg); }  }  @-ms-keyframes rotator3 {    from { -ms-transform: rotateX(0deg);  }    to   { -ms-transform: rotateX(90deg); }  }  #rotator3 {    -webkit-transform-origin: 0 101px;    -webkit-transform-style: preserve-3d;    -webkit-animation-timing-function: cubic-bezier(1, 0.2, 0.2, 1);    -webkit-animation-duration: 2s;    -webkit-animation-delay: 1s;    -moz-transform-origin: 0 101px;    -moz-transform-style: preserve-3d;    -moz-animation-timing-function: cubic-bezier(1, 0.2, 0.2, 1);    -moz-animation-duration: 2s;    -moz-animation-delay: 1s;    -ms-transform-origin: 0 101px;    -ms-transform-style: preserve-3d;    -ms-animation-timing-function: cubic-bezier(1, 0.2, 0.2, 1);    -ms-animation-duration: 2s;    -ms-animation-delay: 1s;  }  #rotator3:hover {    -webkit-animation-play-state: paused;    -moz-animation-play-state: paused;    -ms-animation-play-state: paused;  }

js代码:

document.addEventListener("DOMContentLoaded", function() {    var rotateComplete = function(e) {      with(target.style) {        webkitAnimationName = MozAnimationName = msAnimationName = "";      }      target.insertBefore(arr[arr.length - 1], arr[0]);      setTimeout(function(el) {        with(el.style) {          webkitAnimationName = MozAnimationName = msAnimationName = "rotator3";        }      }, 0, target);    };    var target = document.getElementById("rotator3");    var arr = target.getElementsByTagName("a");    target.addEventListener("webkitAnimationEnd", rotateComplete, false);    target.addEventListener("animationend", rotateComplete, false);    target.addEventListener("MSAnimationEnd", rotateComplete, false);  }, false);

总结:以上就是本篇文的全部内容,希望能对大家的学习有所帮助。

css实现三面立体旋转无限轮播图动画(代码示例)css实现三面立体旋转无限轮播图动画(代码示例)css实现三面立体旋转无限轮播图动画(代码示例)css实现三面立体旋转无限轮播图动画(代码示例)css实现三面立体旋转无限轮播图动画(代码示例)css实现三面立体旋转无限轮播图动画(代码示例)css实现三面立体旋转无限轮播图动画(代码示例)css实现三面立体旋转无限轮播图动画(代码示例)

以上就是css实现三面立体旋转无限轮播图动画(代码示例)的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1613240.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年12月24日 03:29:11
下一篇 2025年12月24日 03:29:53

相关推荐

  • css如何实现无限轮播图动画(代码示例)

    本篇文章给大家带来的内容是如何实现自动无限播放的轮播图动画效果,有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所帮助。 在之前的文章【css如何实现图片的旋转展示效果】中介绍了手动无限轮播图的制作,本篇我们来看看自动无限轮播图动画的制作。下面我们就来看看动画效果是如何实现的。 1、设置动画…

    好文分享 2025年12月24日
    000
  • 如何使用CSS3的渐变来实现文字颜色的渐变?

    在最近的网页设计中,我觉得包含渐变的设计越来越多。这一次,我们将来介绍如何将css3的渐变应用于文本,并介绍一下如何将图像填充到文本上。 在文本上加上颜色渐变 这是一种将渐变色设置为文本的背景颜色。目前支持的浏览器是Google Chrome,Safari,Opera。(推荐课程:CSS3视频教程)…

    2025年12月24日 好文分享
    000
  • css中媒体查询是什么?怎么使用?

    本篇文章给介绍媒体查询是什么?怎么使用?让大家了解媒体查询的使用方法。有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所帮助。 媒体查询是什么?有什么用? 媒体查询限制CSS样式的范围,以便仅在满足某些媒体条件时才适用。 简单来说:媒体查询可以让我们根据设备显示器的特性(如视口宽度、屏幕比例…

    2025年12月24日
    000
  • css如何使用媒体查询进行响应式设计?(示例详解)

    本篇文章给大家带来的内容是介绍css如何使用媒体查询进行响应式设计?(示例详解),通过简单的示例来看看最小宽度和最大宽度的使用。有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所帮助。 响应式设计背后的理念是使用相同的代码库在各种设备上提供出色的体验。这意味着我们编写的代码应该与设备无关。执…

    2025年12月24日
    000
  • CSS3如何实现水平轴上的旋转(附代码)

    使用css3可以以三维方式在其水平/垂直轴上旋转dom元素。本篇文章就给大家来分享关于css3实现在水平轴上旋转的方法,有感兴趣的朋友可以看一看 我们直接进入正文 HTML代码是: Barack 5397 HonoluluAugust 4, 1961 CSS代码是: 立即学习“前端免费学习笔记(深入…

    好文分享 2025年12月24日
    000
  • css的cursor属性是什么?cursor属性的使用

    本篇文章给大家带来的内容是介绍css的cursor属性是什么?cursor属性的使用。有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所帮助。 首先我们来了解一下cursor属性是什么?有什么作用? cursor属性是css中的光标属性,它指定当鼠标位于应用元素上时可以使用的鼠标光标类型,即…

    2025年12月24日
    000
  • CSS3媒体查询的动画响应布局

    本篇文章给大家分享的内容是关于css3媒体查询的动画响应布局,有感兴趣的朋友可以看一看,我们来看正文内容。 什么是媒体查询 CSS3为我们带来了许多我们用于网页设计的新功能,其中一项功能可以帮助改善网站的可用性,即媒体查询。 媒体查询Boilerplate /* Smartphones (portr…

    好文分享 2025年12月24日
    000
  • cursor属性如何改变光标的形状?(图文详解)

    本篇文章给大家带来的内容是介绍cursor属性改变光标形状的方法,让大家了解cursor属性可以设置的大部分常用的光标形状。有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所帮助。 首先我们来看看cursor属性是如何改变光标形状的。 css3 cursor属性的基本语法: cursor: …

    2025年12月24日 好文分享
    000
  • css3制作一个简单的火箭动画(附代码)

    本篇文章给大家带来的内容是使用css3制作一个简单的火箭动画(附代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所帮助。 在之前的文章【css3动画之transform属性与transition属性的简单使用】中介绍了transform属性与transition属性的简单使用。下面我…

    2025年12月24日
    000
  • css3+js实现烟花绽放的动画效果(代码示例)

    本篇文章给大家介绍通过js+css3的transforms属性和keyframes属性来实现烟花绽放的动画效果的方法。有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所帮助。 首先我们来看看效果: 动画的实现原理: 动画使用了两个关键帧(keyframes): 一个是烟花筒上升的轨迹,另一个…

    2025年12月24日
    000
  • css3线性渐变语法的详解(代码示例)

    本篇文章给大家带来的内容是css3线性渐变语法的详解(代码示例)。有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所帮助。 线性渐变的完整语法: .demo { background: linear-gradient(to left, black, white);} 效果: 兼容性写法: 立…

    2025年12月24日 好文分享
    000
  • 详解css3径向渐变如何定义中心和大小形状(代码示例)

    本篇文章给大家带来的内容是详解css3径向渐变如何定义中心和大小形状(代码示例)。有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所帮助。 为了让径向渐变–radial-gradient()在所有支持的浏览器中都能正常工作,并让一些新增功能可以涵盖任何未来的支持。我们可以这样写:…

    2025年12月24日 好文分享
    000
  • css3径向渐变详解之精确定义渐变的形状大小、添加多种终止颜色

    本篇文章给大家带来的内容是css3径向渐变详解之精确定义渐变的形状大小、添加多种终止颜色。有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所帮助。 定义明确的形状和大小 在之前的文章【详解css3径向渐变如何定义中心和大小形状】中我们介绍定义渐变中心、使用关键字定义渐变形状与大小的方法,大家…

    2025年12月24日 好文分享
    000
  • css如何实现幻灯片效果?幻灯片的实现方法(代码示例)

    本篇文章给大家带来的内容是介绍css如何实现幻灯片效果?幻灯片的实现方法(代码示例)。有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所帮助。 下面我们就通过代码来一步步实现幻灯片切换(淡入淡出)的效果: 1、建立html文件,编写demo 首先我们要在页面上设置图像列表,包含在div盒子中…

    2025年12月24日
    000
  • css3的重复渐变是什么?如何使用?(代码示例)

    本篇文章给大家带来的内容是介绍css3的重复渐变是什么?如何使用?(代码示例)。有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所帮助。 首先我们就来介绍一下重复渐变是什么? 在css3中除了可以实现线性渐变【linear-gradient()】,径向渐变【radial-gradient()…

    2025年12月24日
    000
  • css如何创建3D立体的条形图?创建3D立体的条形图的示例

    本篇文章给大家介绍css创建3d立体的条形图的方法。有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所帮助。 本文介绍的创建立体条形图的示例,使用了透视和旋转的3D效果,而不仅仅是倾斜变换。 结果是一个图表,可以从任何方向查看。 下面我们来一步一步介绍如何建立,示例代码在WebKit浏览器中…

    2025年12月24日 好文分享
    000
  • css如何实现弹跳球动画效果?现弹跳球动画的实现示例

    css如何实现弹跳球动画效果?本篇文章给大家通过代码示例介绍css是如何实现弹跳球动画效果的。有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所帮助。 1、定义动画关键帧 对于这个动画,我们将使用两个关键帧 – 一个用恒定速度水平平移球,另一个用于应用大致抛物线垂直弹跳运动。可以…

    2025年12月24日
    000
  • css中linear-gradient()可以干什么?linear-gradient()的使用

    本篇文章给大家介绍的是css中linear-gradient()可以干什么?linear-gradient()的使用。有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所帮助。 渐变是从一种颜色平滑地淡化到另一种颜色的图像,可以让你在两个或多个指定的颜色之间显示平稳的过渡。这些通常用于背景图像…

    2025年12月24日 好文分享
    000
  • css中radial-gradient()是什么?radial-gradient()的使用

    本篇文章给大家介绍的是css中radial-gradient()是什么?radial-gradient()的使用。有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所帮助。 在css中我们可以通过设置渐变(gradients)来实现两个或多个指定的颜色之间显示的平稳过渡。且因为渐变(gradi…

    2025年12月24日 好文分享
    000
  • css3如何设置动画?css设置简单动画的方法

    css3如何设置动画?本篇文章给大家带来的内容是介绍css3设置简单动画的方法。有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所帮助。 首先我们来了解一下css3实现简单动画需要用到的属性:animation属性,@keyframes “规则”。 animation属性和@keyframe…

    好文分享 2025年12月24日
    000

发表回复

登录后才能评论
关注微信