旋转立方体.html(网上收集5)

html 复制代码
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>旋转立方体</title>
    <style>
        #cube {
            width: 200px;
            height: 200px;
            position: relative;
            transform-style: preserve-3d;
            animation: rotate 6s infinite linear;
            margin: 100px auto;
        }

        #cube div {
            position: absolute;
            width: 200px;
            height: 200px;
            background-color: rgba(0, 255, 255, 0.5);
            border: 2px solid #333;
        }

        #cube .front {
            transform: translateZ(100px);
        }

        #cube .back {
            transform: rotateY(180deg) translateZ(100px);
        }

        #cube .right {
            transform: rotateY(90deg) translateZ(100px);
        }

        #cube .left {
            transform: rotateY(-90deg) translateZ(100px);
        }

        #cube .top {
            transform: rotateX(90deg) translateZ(100px);
        }

        #cube .bottom {
            transform: rotateX(-90deg) translateZ(100px);
        }

        @keyframes rotate {
            0% {
                transform: rotateX(0) rotateY(0) rotateZ(0);
            }
            100% {
                transform: rotateX(360deg) rotateY(360deg) rotateZ(360deg);
            }
        }
    </style>
</head>
<body>
<div id="cube">
    <div class="front"></div>
    <div class="back"></div>
    <div class="right"></div>
    <div class="left"></div>
    <div class="top"></div>
    <div class="bottom"></div>
</div>
<script>
    const cube = document.querySelector('#cube');
    let isPaused = false;

    cube.addEventListener('mouseover', () => {
        isPaused = true;
        cube.style.animationPlayState = 'paused';
    });

    cube.addEventListener('mouseout', () => {
        isPaused = false;
        cube.style.animationPlayState = 'running';
    });

    setInterval(() => {
        if (!isPaused) {
            cube.style.animationPlayState = 'running';
        }
    }, 1000);
</script>
</body>
</html>
相关推荐
尘寰ya19 分钟前
前端面试-HTML5与CSS3
前端·面试·css3·html5
liangshanbo12151 小时前
深入讲解 CSS 选择器权重及实战
前端·css
一只小风华~5 小时前
Web前端 (CSS篇)
前端·css·html·html5
暖阳_xm6 小时前
flex布局实现横向滚动
前端·css·微信小程序
一只小风华~8 小时前
web前端开发:CSS的常用选择器
前端·css·html·html5
工呈士8 小时前
HTML语义化与无障碍设计
前端·html
云边有个稻草人9 小时前
【Web前端技术】第一节—HTML简介
前端·html·什么是网页?·web标准的构成·为什么需要web标准·什么是 html?·网页的形成
LkeuY9 小时前
纯原生(html+css)实现自定义复选框
前端·css
无名友10 小时前
HTML — 过渡与动画
前端·css·html
魔云连洲11 小时前
使用 Sass 打造动态星空背景效果
前端·css·sass