css3 3D变换和动画

3D变换和动画

  1. 建立3D空间,transform-style: preserve-3d
  2. perspective: 100px; 景深
  3. perspective-origin:center center -180px;  景深基点
  4. transform新增函数如下:
    • rotateX();
    • rotateY();
    • rotateZ();
    • translateZ();
    • scaleZ();
  5. 3d动画demo,只支持Webkit内核,可自行运行查看效果

    <!DOCTYPE HTML>
    <html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
        <title>无标题文档</title>
        <style>
            .wrap { width: 100px; height: 100px; -webkit-perspective: 200px; border: 5px solid pink; padding: 100px; margin: 200px auto 0; -webkit-transform: scale(2);}
            #box {width: 100px; height: 100px;  position: relative; text-align: center; line-height: 100px; -webkit-transform-style: preserve-3d; transition: 3s; -webkit-transform-origin: center center -50px;}
            #box div {width: 100px; height: 100px; position: absolute; font-size: 50px; color: #FFF;}
            #box div:nth-of-type(1) {background-color: #F90; left: 0px; top: 0px;}
            #box div:nth-of-type(2) {background-color: #E08; left: 0px; top: -100px; -webkit-transform-origin: bottom; -webkit-transform: rotateX(90deg);}
            #box div:nth-of-type(3) {background-color: #A01; left: -100px; top: 0px; -webkit-transform-origin: right; -webkit-transform: rotateY(-90deg);}
            #box div:nth-of-type(4) {background-color: #CC0; left: 100px; top: 0px; -webkit-transform-origin: left; -webkit-transform: rotateY(90deg);}
            #box div:nth-of-type(5) {background-color: #D34; left: 0px; top: 100px; -webkit-transform-origin: top; -webkit-transform: rotateX(-90deg);}
            #box div:nth-of-type(6) {background-color: #000; left: 0px; top: 0px; -webkit-transform: translateZ(-100px) rotateX(180deg);}
            .wrap:hover  #box{-webkit-transform: rotateX(360deg);}
        </style>
        <script>
            window.onload = function() {
                var oBox = document.getElementById("box");
                oBox.style.WebkitTransform = "rotateX(360deg)";
                addEnd(oBox, end1);
    
                function end1() {
                    addEnd(oBox, end2);
                    oBox.style.WebkitTransform = "rotateX(0deg)";
                }
    
                function end2() {
                    addEnd(oBox, end3);
                    oBox.style.WebkitTransform = "rotateY(360deg)";
                }
    
                function end3() {
                    oBox.style.WebkitTransform = "rotateY(0deg)";
                }
    
                function addEnd(obj, fn) {
                    obj.addEventListener(‘WebkitTransitionEnd‘, fn, false);
                    obj.addEventListener(‘transitionend‘, fn, false);
                }
    
                function removeEnd(obj, fn) {
                    obj.removeEventListener(‘WebkitTransitionEnd‘, fn, false);
                    obj.removeEventListener(‘transitionend‘, fn, false);
                }
            };
        </script>
    </head>
    <body>
        <div class="wrap">
            <div id="box">
                <div>1</div>
                <div>2</div>
                <div>3</div>
                <div>4</div>
                <div>5</div>
                <div>6</div>
            </div>
        </div>
    </body>
    </html>
时间: 2024-09-29 04:05:20

css3 3D变换和动画的相关文章

CSS3 3D变换实例 滚动的正方体

笔记: 2D变换 transform 位移   translateX() translateY()  简写:translate(X值,Y值)  正值向右,负值向左 旋转 rotate()  rotate(?deg)  括号中为角度值   正值是顺时针旋转,负值是逆时针旋转 缩放 scale()  scale() 括号中为数值,可以为浮点数     如大于1是放大效果,小于1是缩小效果 变形(斜切)  skewX() skewY() 简写:skew(X轴斜切角度,Y轴斜切角度) body:hove

css3 3d效果及动画学习

css参考手册: http://www.phpstudy.net/css3/ http://www.css88.com/book/css/ 呈现3d效果:-webkit-transform-style:preserve-3d; 透视距离:-wenkit-perspective:300; 视角:-webkit-perspective-origin:25% 75%:/*数字正负均可*/ 旋转和变换:transform: translatex(-90px) translatez(90px) rotat

jQuery/CSS3 3D焦点图动画

在线演示 本地下载 原文地址:https://www.cnblogs.com/qixidi/p/10058026.html

纯CSS3炫酷3D折叠面板动画特效

这是一款效果非常炫酷的CSS3 3D折叠面板动画特效.该折叠面板特效当鼠标移动到图片上时,一个面板会以3d折叠的方式在顶部展开,并显示图片的标题等信息..这个效果使用3D CSS animations 来制作折叠面板的动画,纯CSS,没有使用javascript. 在线演示:http://www.htmleaf.com/Demo/201501251276.html 下载地址:http://www.htmleaf.com/css3/css3donghua/201501251275.html

纯CSS3超酷3D旋转立方体动画特效

这是一款效果非常炫酷的纯CSS3 3D旋转立方体动画特效.该3D立方体使用CSS3 perspective制作,可以在水平方向.垂直方向和平面视角方向旋转,效果相当震撼.使用CSS3来制作动画效果已经成为WEB前端开发的一种时尚,从简单的颜色和尺寸动画,到复杂的旋转.翻转动画, CSS3展现了它无穷的魅力.使用CSS来制作立方体动画,代码简洁易懂,效果更是令人惊叹! 在线演示:http://www.htmleaf.com/Demo/201501251274.html 下载地址:http://ww

css3 2d转换3d转换以及动画的知识点汇总

css3 2d转换 2d转换的方法: 1.移动 translate(x, y) 可以改变元素的位置,x.y可为负值: 2.缩放 scale(x, y) 可以对元素进行水平和垂直方向的缩放,x.y的取值可为小数,不可为负值: 4.旋转 rotate(deg) 可以对元素进行旋转,正值为顺时针,负值为逆时针: 5.倾斜 skew(deg, deg) 可以使元素按一定的角度进行倾斜 2d转换的属性: transform transform-origin 用法: 例如: div { transform:

好吧,CSS3 3D transform变换,不过如此!

一.写在前面的秋裤 早在去年的去年,我就大肆介绍了2D transform相关内容.看过海贼王的都知道,带D的家伙都不是好惹的,2D我辈尚可以应付,3D的话,呵呵,估计我等早就在千里之外被其霸气震晕了~~ 看看下图女帝的动作以及神情,就可以知道名字带D的家伙的厉害! 最近折腾iPad的一些东西,有一些3D效果的交互.有些事情,总以为是遥远的未来,谁知真正发生的时候说来就来,比如说一颗想结婚的心,又比方说在实际项目中折腾3D transform效果. 然而,虽然以前折腾过3D变换效果(webkit

CSS3 3D翻转动画

CSS3动画属性:transform(变换):大小.位置.颜色.变形等状态的变化transition(过渡):初始状态过渡到结束状态这个过程中产生的动画animation(动画):定义关键帧动画 CSS3可以实现多种动画效果,下面说的是CSS3实现一个3D翻转的动画效果. <div class="container"> <div class="wrapHover> <div class="wrap"> <div c

19 01 04 CSS3 圆角 grba(带通明的) tansition动画 transform变换 animation动画

CSS3圆角 设置某一个角的圆角,比如设置左上角的圆角:border-top-left-radius:30px 60px; 同时分别设置四个角: border-radius:30px 60px 120px 150px; 设置四个圆角相同:border-radius:50%; rgba(新的颜色值表示法) 2.rgba(0,0,0,0.1) 前三个数值表示颜色,第四个数值表示颜色的透明度 CSS3 transition动画 1.transition-property 设置过渡的属性,比如:widt