用CSS中的动画效果做一个转动的表

复制代码
<!DOCTYPE html>
<html lang="en">
     <head>
        <meta charset="utf-8">
        <title>
      
        </title>
        <style>
           *{
            margin:0;
            padding:0;
           } 
           /*制作表的样式*/
           .clock{
                width: 500px;
                height: 500px;
                margin:0 auto;
                margin-top:100px;
                border-radius: 50%;
                border:1px solid black;
                /*父绝子相*/
                position: relative;
                /*还可以设置表盘背景*/
               background-color: pink;
           }
           .clock>div{
                position:absolute;
                top:0;
                left:0;
                right:0;
                bottom:0;
                margin:auto;
           }
           /*设置时针*/
           .hour-wrapper{
                height: 70%;
                width: 70%;
                /*linear为匀速运动*/
                animation: run 7200s linear infinite;
           }
           .hour{
            height: 50%;
            width: 6px;
            background-color: #000;
            margin:0 auto;
           }
           /*设置分针*/
           .min-wrapper{
            height: 80%;
            width: 80%;
            animation: run 600s steps(60) infinite;  /*因为秒针设置为10s,所以分钟数为60*10s=600s*/
           }
           .min{
            height: 50%;
            width: 4px;
            background-color: #000;
            margin:0 auto;
           }
            /*设置秒针*/
            .sec-wrapper{
            height: 95%;
            width: 95%;
            animation: run 10s steps(60) infinite;
           }
           .sec{
            height: 50%;
            width: 2px;
            background-color: #f00;
            margin:0 auto;
           }
           
         /*设置动画*/
            @keyframes run {
                from{
                    transform:rotateZ(0);
                }
                to{
                    transform: rotateZ(360deg);
                }
            }

        </style>
     </head>
     <body>
        <!--在秒针外面设置父元素,因为秒针旋转的轴心是一端,而做出来动画中秒针旋转的轴心是线的中间,
        所以要设置一个父元素,将线的另一半进行一个遮盖,让视觉效果和真正的秒针一样-->
        <!--创建表的容器-->
        <div class="clock">
            <!--创建时针-->
            <div class="hour-wrapper">
                <div class="hour"></div>
            </div>
           <!--设置分针-->
           <div class="min-wrapper">
            <div class="min"></div>
        </div>
        <!--设置秒针-->
        <div class="sec-wrapper">
            <div class="sec"></div>
        </div>
    </div>
         
     </body>
</html>
相关推荐
嚴寒9 分钟前
Mac 安装 Dart & Flutter 完整开发环境指南
前端·macos
用户66006766853913 分钟前
从变量提升到调用栈:V8 引擎如何 “读懂” JS 代码
前端·javascript
白兰地空瓶13 分钟前
【深度揭秘】JS 那些看似简单方法的底层黑魔法
前端·javascript
进阶的小叮当17 分钟前
Vue代码打包成apk?Cordova帮你解决!
android·前端·javascript
天天进步201520 分钟前
从零开始构建现代化React应用:最佳实践与性能优化
前端·react.js·性能优化
程序媛_MISS_zhang_011026 分钟前
浏览器开发者工具(尤其是 Vue Devtools 扩展)和 Vuex 的的订阅模式冲突
前端·javascript·vue.js
fruge28 分钟前
Vue3.4 Effect 作用域 API 与 React Server Components 实战解析
前端·vue.js·react.js
神秘的猪头41 分钟前
🌐 CSS 选择器详解:从基础到实战
前端·javascript
远山枫谷43 分钟前
CSS选择器优先级计算你真的会吗?
前端·css
Forever_xl43 分钟前
埋点监控平台全景调研
前端