立方体旋转动画效果

css

         #container{
width: 400px;
height: 400px;
-webkit-perspective:;
perspective:;
-webkit-perspective-origin:50% 225px;
perspective-origin:50% 225px; }
#stage{
width: 300px;
height:300px; -webkit-transition: -webkit-transform 2s;
transition: transform 2s;
-webkit-transform-style: preserve-3d;
transform-style: preserve-3d; }
#shape{
width: 200px;
height:200px;
position: relative;
top: 100px;
margin:0 auto;
transform-style: preserve-3d;
}
#shape{
-webkit-animation: spin 8s infinite linear; }
.plane{
position: absolute;
width: 200px;
height:200px;
background: #c23c00;
border: 1px solid #000;
font-size: 100px;
color:#fff;
text-align: center;
line-height: 200px;
-webkit-transition: -webkit-transform 2s, opacity 2s;
transition: transform 2s, opacity 2s;
-webkit-backface-visibility: hidden;
backface-visibility: hidden;
}
#shape.backface .plane{
-webkit-backface-visibility: visible;
backface-visibility: visible;
} .cube>.one{
opacity: 0.5 ;
-webkit-transform: scale3d(1.2, 1.2, 1.2) rotateX(90deg) translateZ(100px);
transform: scale3d(1.2, 1.2, 1.2) rotateX(90deg) translateZ(100px)
}
.cube>.two{
opacity: 0.5 ;
-webkit-transform: scale3d(1.2, 1.2, 1.2) translateZ(100px);
transform: scale3d(1.2, 1.2, 1.2) translateZ(100px);
}
.cube>.three{
opacity: 0.5 ;
-webkit-transform: scale3d(1.2, 1.2, 1.2) rotateY(90deg) translateZ(100px);
transform: scale3d(1.2, 1.2, 1.2) rotateY(90deg) translateZ(100px);
}
.cube > .four{
opacity: 0.5 ;
-webkit-transform: scale3d(1.2, 1.2, 1.2) rotateY(180deg) translateZ(100px);
transform: scale3d(1.2, 1.2, 1.2) rotateY(180deg) translateZ(100px);
}
.cube > .five{
opacity: 0.5 ;
-webkit-transform: scale3d(1.2, 1.2, 1.2) rotateY(-90deg) translateZ(100px);
transform: scale3d(1.2, 1.2, 1.2) rotateY(-90deg) translateZ(100px);
}
.cube > .six{
opacity: 0.5 ;
-webkit-transform: scale3d(1.2, 1.2, 1.2) rotateX(-90deg) translateZ(100px);
transform: scale3d(1.2, 1.2, 1.2) rotateX(-90deg) translateZ(100px);
}
@-webkit-keyframes spin{
0% {
-webkit-transform : rotateY(0);
transform : rotateY(0);
}
100% {
-webkit-transform : rotateY(-360deg);
transform : rotateY(-360deg);
}
}
@keyframes spin{
0% {
-webkit-transform : rotateY(0);
transform : rotateY(0);
}
100% {
-webkit-transform : rotateY(-360deg);
transform : rotateY(-360deg);
}
}
perspective:视距
 transform-style: preserve-3d; 3d动画必须,且放在父元素上
translateZ(100px) (100px是高度的一半)
动画加在shape上(.cube的父级,则整体都会旋转)

html

<div id="container" >
<div id="stage">
<div id="shape" class="cube backface">
<div class="plane one">1</div>
<div class="plane two">2</div>
<div class="plane three">3</div>
<div class="plane four">4</div>
<div class="plane five">5</div>
<div class="plane six">6</div>
</div>
</div>
</div>

css3动画效果:3 3D动画的更多相关文章

  1. Android 动画效果 及 自定义动画

    1. View动画-透明动画效果2. View动画-旋转动画效果3. View动画-移动动画效果4. View动画-缩放动画效果5. View动画-动画效果混合6. View动画-动画效果侦听7. 自 ...

  2. javascript动画效果之缓冲动画(修改版)

    在编写多块同时触发运动的时候,发现一个BUG, timer = setInterval(show, 30);本来show是一个自定义函数,当设为timer = setInterval(show(one ...

  3. Java 给PPT添加动画效果(预设动画/自定义动画)

    PPT幻灯片中对形状可设置动画效果,常见的动画效果为内置的固定类型,即动画效果和路径是预先设定好的固定模板,但在设计动画效果时,用户也可以按照自己的喜好自定义动画动作路径.下面,通过Java后端程序代 ...

  4. [web前端] css3 transition属性实现3d动画效果

    cp from : https://www.cnblogs.com/chrxc/p/5123375.html transition属性是一个很强大的3d动画属性,我动手试了一下,很多在网上很火的网页动 ...

  5. css3 transition属性实现3d动画效果

    transition属性是一个很强大的3d动画属性,我动手试了一下,很多在网上很火的网页动画都可以用这个属性实现,只能说这个属性是在是太强大啦,本人在学习次属性之后才知道自己对css3的认识还是偏少, ...

  6. jQuery演示10种不同的切换图片列表动画效果以及tab动画演示 2

    很常用的一款特效纯CSS完成tab实现5种不同切换对应内容效果 实例预览 下载地址 实例代码 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 ...

  7. 012 Android 动画效果(补间动画) +去掉App默认自带的标题+更改应用的图标

    1.介绍 补间动画开发者只需指定动画开始,以及动画结束"关键帧", 而动画变化的"中间帧"则由系统计算并补齐! 2.去掉App的标题 (1)将AndroidMa ...

  8. 通过CSS3属性值的变化实现动画效果+触发这些动画产生交互

    css3过渡 transition 兼容性:IE10+ transition: none | all | property 默认为none all 表示所有属性过渡 property 指定属性值,如c ...

  9. css之实现下拉框自上而下展开动画效果&&自下而上收起动画效果

    HTML代码: <div className={CX('font-size-selector-sub-list', { show: shouldSubListShow === true, hid ...

  10. javascript动画效果之缓冲动画

    这里的html和css的代码是复制之前的随便匀速运动的,所以不需要改变 <!DOCTYPE html> <html> <head> <meta charset ...

随机推荐

  1. kettle--组件(3)--行转列

    组件图如下: 以上操作可以这么理解: IF(DATA1=DATA4) THEN DATA2=DATA3 也就是关键字值的数值会与关键字段的数值匹配,匹配上了就显示数据value filedname所填 ...

  2. angularJS 使用自定义指令输出模板

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <script sr ...

  3. C++设计模式之适配器模式(三)

    4.适配器模式总结 在对象适配器模式中.适配器与适配者之间是关联关系:在类适配器模式中.适配器与适配者之间是继承关系.不论是对象适配器还是类适配器.适配器模式都将现有接口转化为客户类所期望的接口.实现 ...

  4. 检查SSD磁盘是否开启了TRIM指令

    fsutil behavior QUERY DisableDeleteNotify 如果查询结果是“DisableDeleteNotify = 0”,代表SSD已经支持并启用Trim指令:如果提示为“ ...

  5. 又开一坑,运动图形MoGraph for Unity

    Fragment+random: Vertex+random, Vertex+plain Vertex+Sound Plexus like 写了个大概,暂时没这方面需求先放这边了. C4D原版片段和克 ...

  6. DDR3内存详解,存储器结构+时序+初始化过程

    DDR3内存详解,存储器结构+时序+初始化过程 标签: DDR3存储器博客 2017-06-17 16:10 1943人阅读 评论(1) 收藏 举报  分类: 硬件开发基础(2)  转自:http:/ ...

  7. Makefile 自动变量之 $(@D),$(@F)

    参考:http://www.gnu.org/software/make/manual/make.html '$(@D)'The directory part of the file name of t ...

  8. PHP 操作SQLite

    连接数据库 下面的 PHP 代码显示了如何连接到一个现有的数据库.如果数据库不存在,那么它就会被创建,最后将返回一个数据库对象. <?php class MyDB extends SQLite3 ...

  9. 爬虫 (6)- Scrapy 实战案例 - 爬取不锈钢的相关钢卷信息

    超详细创建流程及思路 一. 新建项目 1.创建文件夹,然后在对应文件夹创建一个新的python项目 2.点击Terminal命令行窗口,运行下面的命令创建scrapy项目 scrapy startpr ...

  10. SVN 提交出错:Attempted to lock an already-locked dir

    http://www.2cto.com/kf/201306/221414.html —————————————————————————————————————————————————————— 在ec ...