css3动画效果:3 3D动画
立方体旋转动画效果
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动画的更多相关文章
- Android 动画效果 及 自定义动画
1. View动画-透明动画效果2. View动画-旋转动画效果3. View动画-移动动画效果4. View动画-缩放动画效果5. View动画-动画效果混合6. View动画-动画效果侦听7. 自 ...
- javascript动画效果之缓冲动画(修改版)
在编写多块同时触发运动的时候,发现一个BUG, timer = setInterval(show, 30);本来show是一个自定义函数,当设为timer = setInterval(show(one ...
- Java 给PPT添加动画效果(预设动画/自定义动画)
PPT幻灯片中对形状可设置动画效果,常见的动画效果为内置的固定类型,即动画效果和路径是预先设定好的固定模板,但在设计动画效果时,用户也可以按照自己的喜好自定义动画动作路径.下面,通过Java后端程序代 ...
- [web前端] css3 transition属性实现3d动画效果
cp from : https://www.cnblogs.com/chrxc/p/5123375.html transition属性是一个很强大的3d动画属性,我动手试了一下,很多在网上很火的网页动 ...
- css3 transition属性实现3d动画效果
transition属性是一个很强大的3d动画属性,我动手试了一下,很多在网上很火的网页动画都可以用这个属性实现,只能说这个属性是在是太强大啦,本人在学习次属性之后才知道自己对css3的认识还是偏少, ...
- 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 ...
- 012 Android 动画效果(补间动画) +去掉App默认自带的标题+更改应用的图标
1.介绍 补间动画开发者只需指定动画开始,以及动画结束"关键帧", 而动画变化的"中间帧"则由系统计算并补齐! 2.去掉App的标题 (1)将AndroidMa ...
- 通过CSS3属性值的变化实现动画效果+触发这些动画产生交互
css3过渡 transition 兼容性:IE10+ transition: none | all | property 默认为none all 表示所有属性过渡 property 指定属性值,如c ...
- css之实现下拉框自上而下展开动画效果&&自下而上收起动画效果
HTML代码: <div className={CX('font-size-selector-sub-list', { show: shouldSubListShow === true, hid ...
- javascript动画效果之缓冲动画
这里的html和css的代码是复制之前的随便匀速运动的,所以不需要改变 <!DOCTYPE html> <html> <head> <meta charset ...
随机推荐
- mysql中的时间类型datetime,date,time,year,timestamp小知识点
1.datetime,date,time,year四个类型的值,可以手动输入,也可以调用函数获得值 ① 手动输入,格式如下: datetime "2016-6-22 14:09:30&quo ...
- mongodb - 查看数据库状态
> use test switched to db test > db.stats() { "db" : "test", #数据库名 "c ...
- win10 清理winsxs文件夹
dism /online /cleanup-image /startcomponentcleanup /resetbase
- 当 ftp 遇上 http Proxy
在asp.net 开发中,有时需要使用到ftp 上传文件, 如果客户电脑使用http proxy 上网, 那么,客户电脑在使用ftp上传文件时,可能会出现以下错误: 使用 HTTP Proxy 時,不 ...
- JVM虚拟机(一):java虚拟机的基本结构
1: 类加载子系统(负责从文件系统或者网络中加载class信息,加载的类信息存放于一块成为方法区的内存空间.除了类信息外,方法区中可能还存放运行时常量池信息,包括字符串字面量和数字常量(这部分常量信息 ...
- 使用NoSQL Manager for MongoDBclient连接mongodb
1.安装NoSQL Manager for MongoDB 下载地址:http://www.mongodbmanager.com/download 2.打开client,选server-new mon ...
- Git-查看远程分支、本地分支、创建分支
1.查看本地分支 $ git branch * br-2.1.2.2 master 2.查看远程分支 $ git branch -r origin/HEAD -> origin/master o ...
- Java创建多线程的三种方法
Java多线程实现方式主要有三种:继承Thread类.实现Runnable接口.使用ExecutorService.Callable.Future实现有返回结果的多线程.其中前两种方式线程执行完后都没 ...
- DIV的内容自动换行
word-break:break-all和word-wrap:break-word都是能使其容器如DIV的内容自动换行. 它们的区别就在于: 1,word-break:break-all 例如div宽 ...
- 如何在uboot上实现从网络下载版本镜像并直接在内存中加载之?
这是作者近期项目上遇到的一个需求,描述如下: 一块MT7620N的路由器单板,Flash中已存放一个版本并可以通过uboot正常加载并启动.现在需要:在uboot上电启动过程中,通过外部按键触发干涉, ...