首页 前端知识 用css3写一个三维的立方体动画

用css3写一个三维的立方体动画

2025-03-09 15:03:24 前端知识 前端哥 442 818 我要收藏
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style type="text/css">
        *{
            margin: 0;
            padding: 0;
        }
        .warp{
            position: absolute;
            left: 0;
            right: 0;
            top: 0;
            bottom: 0;
            margin: auto;
            border: 1px solid black;
            width: 300px;
            height: 300px;
            perspective: 200px;
            transform-style: preserve-3d;
        }
        .warp > .box{
            position: absolute;
            left: 0;
            right: 0;
            top: 0;
            bottom: 0;
            margin: auto;
            width: 100px;
            height: 100px;   
            transform-style: preserve-3d;
            transform-origin: center center -50px;
            transition: 3s;
        }
        .warp >.box > div{
            position: absolute;
            width: 100px;
            height: 100px;
            background: rgb(74, 1, 207);
            font:50px/100px "微软雅黑";
            text-align: center;
        }
        .warp>.box>div:nth-child(5){
            top: -100px;
            transform-origin: bottom;
            transform: rotateX(90deg);
        }
        .warp>.box>div:nth-child(3){
            left: -100px;
            transform-origin: right;
            transform: rotateY(-90deg);
        }
        .warp>.box>div:nth-child(4){
            right: -100px;
            transform-origin: left;
            transform: rotateY(90deg);
        }
        .warp>.box>div:nth-child(6){
            bottom: -100px;
            transform-origin: top;
            transform: rotateX(-90deg);
        }
        .warp>.box>div:nth-child(1){
         z-index: 1;  
        }
        .warp>.box>div:nth-child(2){
            transform:translateZ(-100px) rotateX(180deg);
        }
    </style>
</head>
<body>
    <div class="warp">
        <div class="box">
            <div></div>
            <div></div>
            <div></div>
            <div></div>
            <div class="c"></div>
            <div></div>
        </div>
    </div>
</body>
<script type="text/javascript">
    window.onload=function(){
        var a=document.querySelector(".warp");
        var b=document.querySelector(".box");
        var c=document.querySelector(".c");
        var flag=0;
        a.onclick=function(){
            if(flag==0){
                b.style.transform="rotateX(270deg)";
            }else if(flag==1){
                b.style.transform="rotateY(-90deg)";
            }else if(flag==2){
                b.style.transform="rotateY(90deg)"
            }
            if(flag>2)flag=0;
            else flag++;
            console.log(flag);
        }
    }
</script>
</html>
转载请注明出处或者链接地址:https://www.qianduange.cn//article/22967.html
标签
评论
发布的文章

Autoware安装教程

2025-03-09 15:03:40

【C 】map详解

2025-03-09 15:03:37

大家推荐的文章
会员中心 联系我 留言建议 回顶部
复制成功!