【前端学习笔记】12-css动画学习总结之3D立体盒子

通过实现3D立体盒子来对css动画学习总结

练习素材

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

练习代码

  • HTML代码
<!-- 创建一个外部的容器 -->
    <div class="cube">
        <div class="box1">
            <img src="./exercise/复仇者联盟1.jpg" alt="">
        </div>
        <div class="box2">
            <img src="./exercise/复仇者联盟2.jpg" alt="">
        </div>
        <div class="box3">
            <img src="./exercise/复仇者联盟3.jpg" alt="">
        </div>
        <div class="box4">
            <img src="./exercise/复仇者联盟4.jpg" alt="">
        </div>
        <div class="box5">
            <img src="./exercise/复仇者联盟5.jpg" alt="">
        </div>
        <div class="box6">
            <img src="./exercise/复仇者联盟6.jpg" alt="">
        </div>
    </div>
  • css代码
<style>
        html{
            perspective: 800px;
        }
        .cube{
            width: 200px;
            height: 200px;
         
            margin: 100px auto;
            /* 设置3d变形效果 */
            transform-style: preserve-3d;
            transform: rotateX(45deg) rotateZ(45deg);
            /* 设置动画效果 */
            animation: rotate 15s infinite linear;
        }
        .cube>div{
            width: 200px;
            height: 200px;
            position: absolute;
            opacity: 0.7;
      
        }
        img{
            /* 改变对齐方式,清除图片下缝隙 */
            vertical-align: top;
        }
        .box1{
            transform: rotateY(90deg) translateZ(100px);
        }
        .box2{
            transform: rotateY(-90deg) translateZ(100px);
        }
        .box3{
            transform: rotateX(90deg) translateZ(100px);
        }
        .box4{
            transform: rotateX(-90deg) translateZ(100px);
        }
        .box5{
            transform: rotateY(0deg) translateZ(100px);
        }
        .box6{
            transform: rotateY(180deg) translateZ(100px);
        }
        @keyframes rotate {
            form{
                transform: rotateX(0) rotateZ(0);
            }
            to{
                transform: rotateX(1turn) rotateZ(1turn);
            }
            
        }
        
    </style>

练习总结

  • 实现3D效果需使用perspective给html设置视距才能看到Z轴方向的变化
  • transform-style:preserve-3D表示所有子元素在3D空间中呈现。
  • 元素的透明效果和旋转效果必不可少
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值