利用css3 transform实现一个时钟

transform:rotate(1deg)


<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <link rel="stylesheet" href="clock.css">
    <title>Clock</title>
</head>
<body>
    <div id="clock">
        <div class="pointer" id="hour"></div>
        <div class="pointer" id="minute"></div>
        <div class="pointer" id="second"></div>
    </div>
    <script>
        var hourEle = document.getElementById("hour");
        var minuteEle = document.getElementById("minute");
        var secondEle = document.getElementById("second");
        setInterval(
            function () {

                var d = new Date();
                var hour = d.getHours();
                var minute = d.getMinutes();
                var second = d.getSeconds();
                let hourDeg = (hour%12+minute/60)*30-90;
                let minuteDeg = (minute+second/60)*6-90;
                let secondDeg = second*6-90;
                hourEle.style.transform = "rotate("+hourDeg+"deg)";
                minuteEle.style.transform = "rotate("+minuteDeg+"deg)";
                secondEle.style.transform = "rotate("+secondDeg+"deg)";

            },
            1000
        )
    </script>
</body>
</html>

  

#clock{
    position: relative;
    width: 100px;
    height:100px;
    -webkit-border-radius: 50px;
    border-radius: 50px;
    border: 1px solid grey;
}
.pointer{
    transform-origin: left center;
}
#hour{
    width: 30px;
    height: 4px;
    background-color: black;
    position: absolute;
    top:50%;
    left: 50%;
    margin-top: -2px;

}
#minute{
    width: 40px;
    height: 2px;
    background-color: blue;
    position: absolute;
    top:50%;
    left: 50%;
    margin-top: -1px;

}
#second{
    width: 45px;
    height: 1px;
    background-color: red;
    position: absolute;
    top:50%;
    left: 50%;

}

  

时间: 2024-10-15 16:46:41

利用css3 transform实现一个时钟的相关文章

利用CSS3 transform: rotate(xxdeg)画对角线

直接上代码. <style> *{ /*实际开发中,别这样偷懒哦*/ margin: 0; padding: 0; list-style: none; } .out{ width: 200px; height: 200px; background-color: #607D8B; display: flex; align-items: center; margin: 0 auto; position: relative; } .inner{ border-left: 1px solid #8BC

利用CSS3的transform属性让元素在页面居中

今天学到让元素在页面中水平居中的新写法,利用了CSS3的transform属性,通过设置translate的值来改变元素的位置. 1.先来看看怎么实现的 页面中放一个div,width和height随便设置大小和背景色,以便查看效果: 1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>利用CSS3的

如何利用CSS3编写一个满屏的布局

如何利用CSS3编写一个满屏的布局 css3的出现能帮助我们更加轻松的实现各种想要的效果,例如写一个刚好满屏的布局,我们就可以利用CSS3的弹性盒模型来实现. 先来贴出html布局代码: 1 <%- include header %> 2 <div class="wrapper"> 3 <div id="appswall"> 4 <div class="adsapp-title"><butto

利用canvas制作一个时钟

先上张效果图. 利用canvas来画出一个时钟,想想都是一件神奇又美妙的事情.话不多说,先上代码吧. <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width,initial-scale=1.0,maximum-sca

利用html5制作一个时钟动画

1 <canvas id="clock" width="500" height="500" style="background-color: yellow"></canvas> 1 var clock=document.getElementById("clock"); 2 var cxt=clock.getContext("2d"); 3 function dra

利用javafx编写一个时钟制作程序

1.首先创建一个时钟类,用于编写时钟的各种特有属性 package javaclock; /** * * @author admin */import java.util.Calendar;import java.util.GregorianCalendar;import java.util.Scanner; import javafx.scene.layout.Pane;import javafx.scene.paint.Color;import javafx.scene.shape.Circ

CSS3 transform 属性详解(skew, rotate, translate, scale)

写这篇文章是因为在一个前端QQ群里,网友 "小豆豆" (应他要求要出现他的网名......) ,问skew的角度怎么算,因为他看了很多文章还是不能理解skew的原理.于是,我觉得有必要写个博文,帮助那些不懂的人,让他们看了此文就懂. 进入正题: 先说明下,电脑屏幕的XY轴跟我们平时所说的直角坐标系是不一样的.如下图: 图上的盒子就是代表我们的电脑屏幕,原点就是屏幕的左上角,竖直向下为X轴正方向,水平向右为Y轴正方向. 1.倾斜skew 先看图 每个图下方都有skew的参数.粗的红色的线

巧妙利用CSS3实现太阳系行星公转运动轨迹

前段时间在博客园看到一篇很不错的文章,就是介绍如何用CSS3来实现太阳系中行星的运动.本小姐处于好奇心从头到完整的看完了.突然发现好奇不仅仅害死猫,也可以增长知识嘛(你这是什么谬论!!!).也许有的朋友看过有关的文章那么今天我们就一起来看看怎么巧妙的利用CSS3 来实现这么漂亮的动画的吧! 我不清楚大家对于CSS3的动画了解多少,但是我对于 CSS3的东西还是限制与用什么查什么的阶段.css3的animation动画,结合transform的大小.旋转.位移.斜切,通过两三行代码,便可做出很多有

如何利用CSS3实现完备的幻灯片(1)

概述:我所谓完备的幻灯片,乃指满足下列条件的页面效果: 1.包含左右箭头: 2.左右箭头能无限点击,产生无限循环切换的效果: 2.图片具有滑动效果: 3.包含与图片一一对应,用以切换的选项块: 4.选项块拥有两个状态,其一为普通,其二为「当前」,后者反映其自身与当前显示区的图片具有对应关系,该对应关系必须随时有效: 5.图片自动播放,并无限循环: 6.鼠标进入图片时,图片暂停播放: 7.鼠标离开图片时,图片按当前顺序继续播放,无限循环. 如上,它完备,未必完美. 本着循序渐进的原则,我先从利用c