3.19总结(3d转换)

1.位移

transform:translateX

transform:translateY

transform:translateZ:物体到屏幕的距离,尽量大于0,否则容易出现兼容问题。并且不能大于透视的距离,否则会消失,大概类似物体去到了后脑勺后面就看不到了。

2.旋转

transform:rotateX

左手法则:左手握拳,先让大拇指指向该轴的正值方向(朝右);四指弯曲的方向 是物体运动的正角度。

transform:rotateY

左手法则:左手握拳,先让大拇指指向该轴的正值方向(朝下);四指弯曲的方向 是物体运动的正角度。

transform:rotateZ

左手法则:左手握拳,先让大拇指指向该轴的正值方向(朝脸);四指弯曲的方向 是物体运动的正角度。

transform:rotate3d (合写)一般情况下,会把位移写在前面,因为旋转会影响轴的方向。

 transform: rotate3d(1,1,0,20deg);

3.透视

perspective:500px;

1.写给被观察元素的父元素 单位:px

4.开启3d空间

transform-style:preserve-3d;

给直接的父元素设置(受影响的是子元素)

5.斜切 skew

transform: skewX(35deg);   沿着X方向斜切
transform: skewY(35deg);     沿着Y方向斜切
transform: skew(45deg, 60deg);  沿着 X 和 Y  都斜切

6.设置3D元素的观察视角

perspective-origin

值可以跟px,%,方位名词

案例:

/* 将 透视调节小以后,就可以跟放电影的效果一样了 */
        
        .wutai {
            width: 600px;
            height: 400px;
            border: 1px solid #ccc;
            margin: 50px auto;
            perspective: 1000px;
            perspective-origin: 45%px 40%;
        }
        
        .rongqi {
            position: relative;
            width: 200px;
            height: 300px;
            border: 1px solid red;
            margin: 50px auto;
            transform-style: preserve-3d;
            animation: bianhuan 6s linear infinite;
        }
        
        .rongqi:hover {
            animation-play-state: paused;
        }
        
        .rongqi img {
            position: absolute;
            left: 0;
            top: 0;
            width: 200px;
            height: 300px;
        }
        
        .rongqi img:nth-child(1) {
            transform: rotateY(40deg) translateZ(300px);
        }
        
        .rongqi img:nth-child(2) {
            transform: rotateY(80deg) translateZ(300px);
        }
        
        .rongqi img:nth-child(3) {
            transform: rotateY(120deg) translateZ(300px);
        }
        
        .rongqi img:nth-child(4) {
            transform: rotateY(160deg) translateZ(300px);
        }
        
        .rongqi img:nth-child(5) {
            transform: rotateY(200deg) translateZ(300px);
        }
        
        .rongqi img:nth-child(6) {
            transform: rotateY(240deg) translateZ(300px);
        }
        
        .rongqi img:nth-child(7) {
            transform: rotateY(280deg) translateZ(300px);
        }
        
        .rongqi img:nth-child(8) {
            transform: rotateY(320deg) translateZ(300px);
        }
        
        .rongqi img:nth-child(9) {
            transform: rotateY(360deg) translateZ(300px);
        }
        
        @keyframes bianhuan {
            0% {
                transform: rotateX(-20deg) rotateY(0deg);
            }
            100% {
                transform: rotateX(-20deg) rotateY(360deg);
            }
        }


  <div class="wutai">
        <div class="rongqi">
            <img src="./images/girl1.jpg">
            <img src="./images/girl2.jpg">
            <img src="./images/girl3.jpg">
            <img src="./images/girl4.jpg">
            <img src="./images/girl5.jpg">
            <img src="./images/girl6.jpg">
            <img src="./images/girl7.jpg">
            <img src="./images/girl8.jpg">
            <img src="./images/girl9.jpg">
        </div>
    </div>

7.浏览器的类前缀

div {
     /* 渐进增强  先满足低版本的浏览器  最后 满足高版本 浏览器 */
    -moz-transition: all 1s;  火狐
     -ms-tansition: all 1s;  IE
     -webkit-tansition: all 1s;  苹果  谷歌
     -o-tansition: all 1s;  欧朋
     transition: all 1s 
       
     /* 优雅降级    先满足高版本的浏览器 最后 满足低版本 浏览器*/
     transition: all 1s;
     -moz-transition: all 1s;
     -ms-tansition: all 1s;
     -webkit-tansition: all 1s;
     -o-tansition: all 1s;
   }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值