3d图片切换(css3帧动画)
效果带抖动翻转隐藏,使用帧动画

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<link rel="stylesheet" type="text/css" href="../css/public.css"/>
<style type="text/css">
.wrap{position:relative;width: 400px;height: 300px;margin: 100px auto;-webkit-perspective: 800px;}
.list{width: 400px;height:300px;-webkit-transform-style: preserve-3d;}
li{position:absolute;width: 400px;height: 300px;overflow: hidden;-webkit-transform-origin:bottom;opacity:;-webkit-transform: rotateX(-180deg);}
li a{display: block;width: 400px;height: 300px;}
img{width: 100%;height: 100%;}
.prev,.next{position: absolute;top: 130px;width: 60px;height: 30px;text-align: center;line-height: 30px;background: #ccc;cursor: pointer;}
.prev{left: -100px;}
.next{right: -100px;}
@-webkit-keyframes hide{
0%{
-webkit-transform: rotateX(0);
opacity: 1;
}
100%{
-webkit-transform: rotateX(180deg);
opacity: 0;
}
}
@-webkit-keyframes show{
0%{
-webkit-transform: rotateX(180deg);
opacity: 0;
}
50%{
-webkit-transform: rotateX(-30deg);
opacity: 1;
}
60%{
-webkit-transform: rotateX(20deg);
opacity: 1;
}
70%{
-webkit-transform: rotateX(-18deg);
opacity: 1;
}
80%{
-webkit-transform: rotateX(15deg);
opacity: 1;
}
90%{
-webkit-transform: rotateX(-8deg);
opacity: 1;
}
100%{
-webkit-transform: rotateX(0deg);
opacity: 1;
}
}
.hide{-webkit-animation: 500ms hide;-webkit-transform: rotateX(180deg);opacity: 0;}
.show{-webkit-animation: 1s show;-webkit-transform: rotateX(0deg);opacity: 1;}
</style>
<script type="text/javascript">
window.onload=function(){
var oUl=document.getElementById("list");
var aLi=oUl.getElementsByTagName("li");
var oPrev=document.getElementById("prev");
var oNext=document.getElementById("next");
var num=0;
aLi[num].className='show';
oPrev.onclick=function(){
aLi[num%aLi.length].className="hide";
num--;
if(num<0){
num=aLi.length-1;
}
aLi[num%aLi.length].className="show";
}
oNext.onclick=function(){
aLi[num%aLi.length].className="hide";
num++;
aLi[num%aLi.length].className="show";
}
}
</script>
</head>
<body>
<div class="wrap">
<ul class="list" id="list">
<li><a href="javascript:;"><img src="../img/css31.jpg"/></a></li>
<li><a href="javascript:;"><img src="../img/css32.jpg"/></a></li>
<li><a href="javascript:;"><img src="../img/b.jpg"/></a></li>
<li><a href="javascript:;"><img src="../img/c.jpg"/></a></li>
</ul>
<span class="prev" id="prev">上一张</span>
<span class="next" id="next">下一张</span>
</div>
</body>
</html>
3d图片切换(css3帧动画)的更多相关文章
- 精致3D图片切换效果,最适合企业产品展示
这是一个精致的立体图片切换效果,特别适合企业产品展示,可立即用于实际项目中.支持导航和自动播放功能, 基于 CSS3 实现,推荐使用最新的 Chrome,Firefox 和 Safari 浏览器浏览效 ...
- CSS3帧动画
在前面的文章中也有介绍过css3动画的内容,可见<关于transition和animation>和<webkitAnimationEnd动画事件>,今天又要唠叨一下这个东西了, ...
- Css3帧动画深入探寻,讲点项目中实际会碰到的问题
先加个副标题XD --如何解决background-size为100%下处理@keyframes 正是在项目中遇到副标题,才引起我更深入的探寻 先略带一下基本的css3动画 css3的动画实现是通过属 ...
- android图片切换ImageSwichter的动画切换效果
activity_main.xml 控件的线性布局 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/an ...
- android图片闪烁或帧动画
remote_recording_transition.xml 文件 <?xml version="1.0" encoding="utf-8"?> ...
- jquery roundabout幻灯片插件3d图片切换支持图片旋转切换滚动
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- 使用 CSS3 动画实现的 3D 图片过渡特效
这是一个基于 CSS3 动画实现的图片过渡效果,共有 Flip.Rotation.Multi-flip.Cube.Unfold 等6种效果,它们将证明 CSS3 Transform 和 Transit ...
- 9个超绚丽的HTML5 3D图片动画特效
在Web 1.0时代,我们的网页中图片数量非常少,而且都是以静态图片为主.HTML5的出现,推动了Web 2.0的发展,同时也催生出了很多绚丽的HTML5图片动画特效,特别是有些还有3D的动画效果.本 ...
- css3的帧动画
概述 前几天刚好看到一个用了CSS3帧动画的页面,对它非常感兴趣,就研究了一下,记录在下面,供以后开发时参考,相信对其他人也有用. PS:以后别人问我用过什么CSS3属性的时候,我也可以不用说常见的a ...
随机推荐
- StackExchange.Redis帮助类解决方案RedisRepository封装(基础配置)
本文版权归博客园和作者吴双本人共同所有,转载和爬虫,请注明原文地址.http://www.cnblogs.com/tdws/p/5815735.html 写在前面 这不是教程,分享而已,也欢迎园友们多 ...
- C# 复制指定节点的所有子孙节点到新建的节点下
XML结构: 新建一个mask_list节点,一个procedure节点,将上面的mask_list和procedure节点的所有子孙节点添加到新建的mask_list和procedure节点 Xml ...
- C#开发微信门户及应用(8)-微信门户应用管理系统功能介绍
最近对微信接口进行深入的研究,通过把底层接口一步步进行封装后,逐步升级到自动化配置.自动化应答,以及后台处理界面的优化和完善上,力求搭建一个较为完善.适用的微信门户应用管理系统. 微信门户应用管理系统 ...
- [python] File path and system path
1. get files in the current directory with the assum that the directory is like this: a .py |----dat ...
- Struts2配置国际化资源
1. 国际化的目标 1). 如何配置国际化资源文件 I. Action 范围资源文件: 在Action类文件所在的路径建立名为 ActionName_language_country.properti ...
- Mybatis的choose when otherwise
<select id="getCount" resultType="int"> select count(1) from <choose> ...
- win7 64位下vs不能以管理员身份运行的问题解决
开发机上安装了VS6.0/2008/2010/2013,之前一直是正常的,突然莫名其妙不能以管理员身份运行(除了VS6),报"application cannot start.", ...
- Monthly Income Report – August 2016
原文链接:https://marcoschwartz.com/monthly-income-report-august-2016/ Every month, I publish a report of ...
- JAVA操作LDAP的详解(JLDAP)
最近两周由于要学习测试LDAP,所以对于用脚本操作LDAP很感兴趣,所以就做了一些脚本,都是比较简单的脚本吧. 废话不多说了哈.直接上教程 首先声明:我使用的是JLDAP操作LDAP,所以需要从官网下 ...
- 快速排序算法 quick sort的理解
最近做了一下算法的一些练习,感觉基础薄弱了,只是用一些已经有的东西来完成练习如quickSort(c++使用的时候是sort(起始位置,终止位置,比较函数),这个需要加头文件),但是不知道怎么推出来, ...