CSS3的翻转效果
css3图片与文字3D transform切换:
http://www.w3cplus.com/demo/419.html
详细的CSS3属性详解:
http://www.zhangxinxu.com/wordpress/2012/09/css3-3d-transform-perspective-animate-transition/
总结如下:
1、需要使用到的CSS3属性
透视和视角:perspective:8000px; -------------放在舞台上(.box)
需要用到transform的3D变换,即:transform-style:preserve-3d;-------------------------放在容器上(.inner)
translateZ,Z坐标移动,这个需要与perspective搭配使用,transform:translateZ(150px) 里面的数值为舞台高度的一半
rotateX,X方向旋转----------------------刚开始去.r2进行旋转-90度使其看不见,rotate(-90deg)
html布局:
<div class="box">
<div class="inner">
<div class="r1">1</div>
<div class="r2">2</div>
</div>
</div>
CSS:
/*舞台*/
.box {
width: 500px;
height: 300px;
position: relative;
-webkit-perspective:8000px; //透视和视角
}
/*容器*/
.inner {
width: 100%;
height: 100%;
-webkit-transform-style:preserve-3d; //3d变换
transition:.6s;
}
/*内容*/
.r1 {
position: absolute;
width: 100%;
height: 100%;
background: red;
outline:5px solid #000;
-webkit-transform:translateZ(150px); // 里面的数值 = 舞台高度的一半
}
.r2 {
position: absolute;
width: 100%;
height: 100%;
background: yellow;
outline: 5px solid blue;
-webkit-transform:rotateX(-90deg) translateZ(150px); //里面的数值 = 舞台高度的一半,刚开始通过rotateX(-90deg)隐藏在下方
}
/*交互*/
.inner:hover {
-webkit-transform: rotateX(90deg); //让r2出现
}
如果需要左右翻转,只需要更改rotateX为rotateY,translateZ(宽度的一半)
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
另一种翻转效果,结构不变,样式如下:
.box {
width: 300px;
height: 300px;
-webkit-perspective:8000px; /*设置舞台:透视和视角*/
position: relative;
}
.inner {
width: 100%;
height: 100%;
-webkit-transform-style:perserve-3d; /*设置场景:3d变换*/
}
.inner div{
position: absolute; /*绝对定位:使正面和反面全部重合*/
top:;
left:;
width: 100%;
height: 100%;
border-radius:50%;
text-align: center;
line-height: 300px;
-webkit-backface-visibility:hidden; /*背面隐藏*/
}
.r1 {
background: red;
-webkit-transition:1.5s; /*设置动画*/
}
.r2 {
background: yellow;
-webkit-transform:rotateY(180deg); /*刚开始,背面隐藏*/
-webkit-transition:1.5s;
}
.inner:hover .r1{
-webkit-transform:rotateY(180deg); /*翻转后,正面隐藏,反面出现*/
}
.inner:hover .r2 {
-webkit-transform:rotateY(0deg);
}
原理:
1、设置舞台和场景
2、使用绝对定位使正面和反面的div重合,让正面和反面的背面都隐藏,即:backface-visibility:hidden
3、让反面的旋转180deg先隐藏掉,当hover时,正面隐藏(旋转180deg),反面出现(旋转到0)
CSS3的翻转效果的更多相关文章
- css3 3d翻转效果
<div class="demo"> <span class="front"> aaaaaaaaaaa ...
- css3实现色子自动翻转效果
原文:css3实现色子自动翻转效果 css3使我们能够跳出2d空间,实现3维空间的动画效果,这里给出一个自动翻转的3d色子动画效果制作过程. 第一步,首先进行HTML的布局,对于3D效果,布局有一定的 ...
- 简单几步用纯CSS3实现3D翻转效果
作为前端开发人员的必修课,CSS3翻转能带我们完成许多基本动效,本期我们将用CSS3实现hover翻转效果~ 第一步非常简单,我们简单画1个演示方块,为其 添加transition和transform ...
- 使用JS与CSS3的翻转实现3D翻牌效果
之前我们有讨论过使用CSS3如何实现网页水平翻转的效果,而这次我们介绍的是翻转效果更深一层的应用——3D翻牌效果. 这里我们需要使用flip中轴翻转实现,又因为是3D效果,如果希望呈现一定的3D视角, ...
- flip 翻转效果 css3实现
1.实现代码 <!DOCTYPE html> <html lang="zh"> <head> <meta charset="UT ...
- css3 利用perspective实现翻页效果和正方体 以及翻转效果
要点: 1 实现3D效果就需要使用perspective属性 1 页面旋转使用css3的rorate 2 使用backface-visibility 实现正面元素翻转之后背面不可见,显示出反面的元素 ...
- css3实现3D立体翻转效果
1.在IE下无法显示翻转效果,火狐和谷歌可以 /*样式css*/ .nav-menu li { display: inline; } .nav-menu li a { color: #fff; dis ...
- CSS3实现翻转菜单效果
演示地址 点击打开链接 注意:菜单翻转效果在搜狗浏览器上看不出来.推荐用FireFox <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1 ...
- css3图片3D翻转效果
点击图片看翻转效果 html结构 <div class="flip"> <div class="front"> <img src= ...
随机推荐
- RHEL账号总结一:账号的分类
账号是一种用来记录单个用户或者多个用户的数据.RHEL中每一个合法的用户都必须拥有账号,才能使用RHEL. 在RHEL上的账号可以分为两类: 用户账号:用来存储单一用户的数据,你也可以使用一个用户账号 ...
- C++-----lambda使用
lambda是匿名函数,可以拿来当作inline函数使用(用于解决程序员的"起名困难综合症") lambda函数形式: [...] (...) ... {...} [] 内是一个c ...
- linux查找文件的命令【转】
原文链接:http://www.ruanyifeng.com/blog/2009/10/5_ways_to_search_for_files_using_the_terminal.html 1. fi ...
- emacs 使用教程
http://www.cnblogs.com/liuchaogege/p/4464211.html
- 国内首家MR头显公司于CES惊艳亮相
在刚刚过去的CES2017大会上,我们看到了许多较为优秀的VR产品,而在这里面,有一家名不见经传的中国公司易瞳发布了一款兼具VR和AR功能的头显VMG-MARK.它的外观与联想VR和骁龙VR820等产 ...
- 面试题-Java基础-布局管理器
1.什么是布局管理器? 布局管理器用来在容器中组织组件.
- swift3 控件创建
//MARK:- UIScrollView let scrollView = UIScrollView() scrollView.delegate = target scrollView.backgr ...
- 相机标定 matlab opencv ROS三种方法标定步骤(2)
二 ubuntu下Opencv的相机标定 一般直接用Opencv的源码就可以进行相机的标定,但是可能只是会实现结果,却不懂实现的过程,我也是模模糊糊的看了<计算机视觉中的多视图几何>以及 ...
- c#弱事件(weak event)
传统事件publisher和listener是直接相连的,这样会对垃圾回收带来一些问题,例如listener已经不引用任何对象但它仍然被publisher引用 垃圾回收器就不能回收listener所占 ...
- SQL如何实现远程数据库链接
利用sp_addlinkeserver 进行远程数据库连接可以把多个数据库的数据,放置到一个数据库中, 或者有设置操作权限的情况下,我们可以通过这种方式进行查询,备份数据等操作. 首先,我们要创建连接 ...