一款纯css3实现的图片3D翻转幻灯片
之前介绍了好多款网页幻灯片,今天要给大家再带来一款纯css3实现的图片3D翻转幻灯片。这款幻灯片图片轮播采用了3D翻转的形式,效果非常不错。一起看下效果图:

实现的代码。
html代码:
<div style="width: 850px; margin: auto;">
<h1>
pure CSS slice cube slideshow</h1>
<style>
@import 'http://codepen.io/pixelass/pen/wftos.css'</style>
<input type="radio" name="radio___1" checked="checked" id="radio0___1" class="hidden radio0" />
<input type="radio" name="radio___1" id="radio1___1" class="hidden radio1" />
<input type="radio" name="radio___1" id="radio2___1" class="hidden radio2" />
<input type="radio" name="radio___1" id="radio3___1" class="hidden radio3" />
<input type="radio" name="radio___1" id="radio4___1" class="hidden radio4" />
<div lang="en" id="dropwown____1" class="dropdown DROPDOWN">
<input type="checkbox" name="dropdown___1" id="dropdown___1" class="hidden dropdown-toggle" />
<label for="dropdown___1" data-label-0="Slideshow" data-label-1="Slide 1" data-label-2="Slide 2"
data-label-3="Slide 3" data-label-4="Slide 4" data-label-5="undefined" data-label-6="undefined"
data-label-7="undefined" data-label-8="undefined" data-label-9="undefined" data-label-10="undefined"
data-label-11="undefined" data-label-12="undefined" data-label-13="undefined"
data-label-14="undefined" data-label-15="undefined" data-label-16="undefined"
data-label-17="undefined" data-label-18="undefined" data-label-19="undefined"
data-label-20="undefined" data-label-21="undefined" data-label-22="undefined"
data-label-23="undefined" data-label-24="undefined" data-label-25="undefined"
data-label-26="undefined" data-label-27="undefined" data-label-28="undefined"
data-label-29="undefined" class="dropdown-select">
</label>
<ul class="dropdown-menu">
<li class="dropdown-option">
<label for="radio0___1" class="radio0">
Slideshow
</label>
</li>
<li class="dropdown-option">
<label for="radio1___1" class="radio1">
Slide 1
</label>
</li>
<li class="dropdown-option">
<label for="radio2___1" class="radio2">
Slide 2
</label>
</li>
<li class="dropdown-option">
<label for="radio3___1" class="radio3">
Slide 3
</label>
</li>
<li class="dropdown-option">
<label for="radio4___1" class="radio4">
Slide 4
</label>
</li>
</ul>
</div>
<div class="pane">
<div class="cube">
<div class="side">
</div>
<div class="side">
</div>
<div class="side">
</div>
<div class="side">
</div>
<div class="side">
</div>
<div class="side">
</div>
</div>
<div class="cube">
<div class="side">
</div>
<div class="side">
</div>
<div class="side">
</div>
<div class="side">
</div>
<div class="side">
</div>
<div class="side">
</div>
</div>
<div class="cube">
<div class="side">
</div>
<div class="side">
</div>
<div class="side">
</div>
<div class="side">
</div>
<div class="side">
</div>
<div class="side">
</div>
</div>
<div class="cube">
<div class="side">
</div>
<div class="side">
</div>
<div class="side">
</div>
<div class="side">
</div>
<div class="side">
</div>
<div class="side">
</div>
</div>
<div class="cube">
<div class="side">
</div>
<div class="side">
</div>
<div class="side">
</div>
<div class="side">
</div>
<div class="side">
</div>
<div class="side">
</div>
</div>
<div class="cube">
<div class="side">
</div>
<div class="side">
</div>
<div class="side">
</div>
<div class="side">
</div>
<div class="side">
</div>
<div class="side">
</div>
</div>
<div class="cube">
<div class="side">
</div>
<div class="side">
</div>
<div class="side">
</div>
<div class="side">
</div>
<div class="side">
</div>
<div class="side">
</div>
</div>
</div>
</div>
css代码:
.pane {
-webkit-perspective: 700px;
perspective: 700px;
height: 15em;
width: 35em;
margin: 0 230px;
-webkit-transform-style: preserve-3d;
transform-style: preserve-3d;
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
}
.cube {
display: inline-block;
position: relative;
height: 15em;
width: 5em;
-webkit-transform: rotatey(0);
-ms-transform: rotatey(0);
transform: rotatey(0);
-webkit-transition: -webkit-transform 2.56s;
transition: transform 2.56s;
visibility: hidden;
-webkit-animation-duration: 16s;
animation-duration: 16s;
-webkit-animation-iteration-count: infinite;
animation-iteration-count: infinite;
-webkit-animation-timing-function: linear;
animation-timing-function: linear;
-webkit-animation-play-state: paused;
animation-play-state: paused;
}
.cube:nth-child(1) {
-webkit-transition-delay: 0s;
transition-delay: 0s;
-webkit-animation-delay: 0s;
animation-delay: 0s;
}
.cube:nth-child(1) .side {
background-position: 0em 0;
}
.cube:nth-child(2) {
-webkit-transition-delay: 0.2s;
transition-delay: 0.2s;
-webkit-animation-delay: 0.2s;
animation-delay: 0.2s;
}
.cube:nth-child(2) .side {
background-position: -5em 0;
}
.cube:nth-child(3) {
-webkit-transition-delay: 0.4s;
transition-delay: 0.4s;
-webkit-animation-delay: 0.4s;
animation-delay: 0.4s;
}
.cube:nth-child(3) .side {
background-position: -10em 0;
}
.cube:nth-child(4) {
-webkit-transition-delay: 0.6s;
transition-delay: 0.6s;
-webkit-animation-delay: 0.6s;
animation-delay: 0.6s;
}
.cube:nth-child(4) .side {
background-position: -15em 0;
}
.cube:nth-child(5) {
-webkit-transition-delay: 0.8s;
transition-delay: 0.8s;
-webkit-animation-delay: 0.8s;
animation-delay: 0.8s;
}
.cube:nth-child(5) .side {
background-position: -20em 0;
}
.cube:nth-child(6) {
-webkit-transition-delay: 1s;
transition-delay: 1s;
-webkit-animation-delay: 1s;
animation-delay: 1s;
}
.cube:nth-child(6) .side {
background-position: -25em 0;
}
.cube:nth-child(7) {
-webkit-transition-delay: 1.2s;
transition-delay: 1.2s;
-webkit-animation-delay: 1.2s;
animation-delay: 1.2s;
}
.cube:nth-child(7) .side {
background-position: -30em 0;
}
.cube, .cube .side {
-webkit-transform-style: preserve-3d;
transform-style: preserve-3d;
}
.cube .side {
position: absolute;
top:;
left:;
right:;
bottom:;
visibility: visible;
-webkit-backface-visibility: hidden;
backface-visibility: hidden;
background-color: black;
background-size: 35em;
}
.cube .side:nth-child(1) {
background-image: url("slide_1.jpg");
-webkit-transform: translateZ(7.5em);
transform: translateZ(7.5em);
}
.cube .side:nth-child(2) {
width: 300%;
-webkit-transform: rotatey(-90deg) translatez(7.5em);
-ms-transform: rotatey(-90deg) translatez(7.5em);
transform: rotatey(-90deg) translatez(7.5em);
}
.cube .side:nth-child(3) {
width: 300%;
-webkit-transform: rotatey(90deg) translatez(-2.5em);
-ms-transform: rotatey(90deg) translatez(-2.5em);
transform: rotatey(90deg) translatez(-2.5em);
}
.cube .side:nth-child(4) {
background-image: url("slide_2.jpg");
-webkit-transform: rotatey(180deg) rotatez(180deg) translatez(7.5em);
-ms-transform: rotatey(180deg) rotatez(180deg) translatez(7.5em);
transform: rotatey(180deg) rotatez(180deg) translatez(7.5em);
}
.cube .side:nth-child(5) {
background-image: url("slide_3.jpg");
-webkit-transform: rotatex(-90deg) translatez(7.5em);
-ms-transform: rotatex(-90deg) translatez(7.5em);
transform: rotatex(-90deg) translatez(7.5em);
}
.cube .side:nth-child(6) {
background-image: url("slide_4.jpg");
-webkit-transform: rotatex(90deg) translatez(7.5em);
-ms-transform: rotatex(90deg) translatez(7.5em);
transform: rotatex(90deg) translatez(7.5em);
}
#radio0___1:checked ~ .pane .cube {
-webkit-animation-name: SLIDESHOW;
animation-name: SLIDESHOW;
-webkit-animation-play-state: running;
animation-play-state: running;
}
#radio1___1:checked ~ .pane .cube {
-webkit-transform: rotatex(0deg);
-ms-transform: rotatex(0deg);
transform: rotatex(0deg);
}
#radio2___1:checked ~ .pane .cube {
-webkit-transform: rotatex(90deg);
-ms-transform: rotatex(90deg);
transform: rotatex(90deg);
}
#radio3___1:checked ~ .pane .cube {
-webkit-transform: rotatex(180deg);
-ms-transform: rotatex(180deg);
transform: rotatex(180deg);
}
#radio4___1:checked ~ .pane .cube {
-webkit-transform: rotatex(270deg);
-ms-transform: rotatex(270deg);
transform: rotatex(270deg);
}
@-webkit-keyframes SLIDESHOW {
0%, 15% {
-webkit-transform: rotatex(0deg);
transform: rotatex(0deg);
}
25%, 40% {
-webkit-transform: rotatex(90deg);
transform: rotatex(90deg);
}
50%, 65% {
-webkit-transform: rotatex(180deg);
transform: rotatex(180deg);
}
75%, 90% {
-webkit-transform: rotatex(270deg);
transform: rotatex(270deg);
}
100% {
-webkit-transform: rotatex(360deg);
transform: rotatex(360deg);
}
}
@keyframes SLIDESHOW {
0%, 15% {
-webkit-transform: rotatex(0deg);
transform: rotatex(0deg);
}
25%, 40% {
-webkit-transform: rotatex(90deg);
transform: rotatex(90deg);
}
50%, 65% {
-webkit-transform: rotatex(180deg);
transform: rotatex(180deg);
}
75%, 90% {
-webkit-transform: rotatex(270deg);
transform: rotatex(270deg);
}
100% {
-webkit-transform: rotatex(360deg);
transform: rotatex(360deg);
}
}
注:本文爱编程原创文章,转载请注明原文地址:http://www.w2bc.com/Article/8549
一款纯css3实现的图片3D翻转幻灯片的更多相关文章
- 基于jQuery和CSS3炫酷图片3D旋转幻灯片特效
在线预览 源码下载 iPresenter是一款效果非常炫酷的jQuery和CSS3 3D旋转幻灯片特效插件.你可以使用它来制作产品展示.图片画廊或者各种幻灯片和轮播图特效.这款幻灯片插件的特点有: ...
- 一款基于css3的散子3D翻转特效
css3使我们能够跳出2d空间,实现3维空间的动画效果,这里给出一个自动翻转的3d色子动画效果制作过程. 第一步,首先进行HTML的布局,对于3D效果,布局有一定的规律,代码如下: <body& ...
- CSS3之图片3D翻转效果(网页效果--每日一更)
今天,带来的是纯CSS3的效果--图片3D翻转. 请看效果:亲,请点击这里 这个效果主要还是运用了CSS3的transform变形属性,与上个效果不同的是,这次并不是动画,所以没有采用animatio ...
- 一款纯css3实现的超炫3D表单
今天要给大家分享一款纯css3实现的超炫3D表单.该特效页面的加载的时候3d四十五度倾斜,当鼠标经过的时候表单动画回正.效果非常炫,一起看下效果图: 在线预览 源码下载 实现的代码. html代码 ...
- 7款纯CSS3实现的炫酷动画应用
1.纯CSS3实现人物摇头动画 这次我们要来分享一款超级可爱的纯CSS3人物摇头动画,初始化的时候人物的各个部位是利用CSS3动画效果拼接而成,接下来就是人物听音乐的场景,一边听音乐一边摇着脑袋,十分 ...
- 推荐10款纯css3实现的实用按钮
在2014年的双11即将来临之季,爱编程小编为大家整理10款纯css3实现的按钮.希望这对坚守在前端的码农们有所帮助.亲,如果你有好的资源也可在本文留言,让从事编码的程序员们抱团.工作更轻松. No1 ...
- 纯CSS3实现的图片滑块程序 效果非常酷
原文:纯CSS3实现的图片滑块程序 效果非常酷 之前我们经常会看到很多利用jQuery实现的焦点图插件,种类太多了,今天我想给大家分享一款利用纯CSS3实现的图片滑块应用,完全是利用CSS3的相关特性 ...
- 16款纯CSS3实现的loading加载动画
分享16款纯CSS3实现的loading加载动画.这是一款实用的可替代GIF格式图片的CSS3加载动画代码.效果图如下: 在线预览 源码下载 实现的代码. html代码: <div clas ...
- 一款纯css3实现的条纹加载条
之前为大家带来了很多加载动画. 基于prefixfree.js的进度加载条 ,基于jquery带百分比的响应式进度加载条.今天给大家分享一款纯css3实现的条纹加载条.带有响应式的效果.效果图如下 : ...
随机推荐
- result_charts
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding= ...
- Java中entity(实体类)的写法规范
在日常的Java项目开发中,entity(实体类)是必不可少的,它们一般都有很多的属性,并有相应的setter和getter方法.entity(实体类)的作用一般是和数据表做映射.所以快速写出规范的e ...
- centos7安装MySQL5.7无法设置密码问题
前言 在使用centos7系统yum方式安装MySQL5.7后 不知道默认密码是多少 知道后没办法修改? 一.找到MySQL密码 service mysqld start vim /var/log/ ...
- 在python中使用静态方法staticmethod
静态方法: 静态方法是类中的函数,不需要实例.静态方法主要是用来存放逻辑性的代码,主要是一些逻辑属于类,但是和类本身没有交互,即在静态方法中,不会涉及到类中的方法和属性的操作.可以理解为将静态方法存在 ...
- SQL Server里面导出SQL脚本(表数据的insert语句)
转载自:http://hi.baidu.com/pigarmy/blog/item/109894c445eab0a28326ac5a.html 最近需要导出一个表的数据并生成insert语句,发现SQ ...
- 【Oracle错误集锦】:ORA-12154: TNS: 无法解析指定的连接标识符
相信这个错误大家都不陌生,仅仅要安装使用过Oracle的预计都遇到过这个问题,一般出如今用PL/SQL连接Oracle数据库的时候发生的. 导致这个错误的原因以及解决方式都是多种多样的,我也是三番五次 ...
- CodeForces 550A Two Substrings(模拟)
[题目链接]click here~~ [题目大意]: You are given string s. Your task is to determine if the given string s ...
- mark 百度Echarts统计图表
mark http://git.oschina.net/seeyoui/kensite_cms/blob/master/src/main/java/com/seeyoui/kensite/framew ...
- python标准库介绍——1 os详解
== os 模块 == ``os`` 模块为许多操作系统函数提供了统一的接口. 这个模块中的大部分函数通过对应平台相关模块实现, 比如 ``posix`` 和 ``nt. os`` 模块会在第一次导入 ...
- Java:多线程,java.util.concurrent.atomic包之AtomicInteger/AtomicLong用法
1. 背景 java.util.concurrent.atomic这个包是非常实用,解决了我们以前自己写一个同步方法来实现类似于自增长字段的问题. 在Java语言中,增量操作符(++)不是原子的,也就 ...