js+css3实现炫酷时钟


Posted in Javascript onAugust 18, 2020

本文实例为大家分享了js+css3实现炫酷时钟的具体代码,供大家参考,具体内容如下

html

<body>
    <ul id='box'></ul>
</body>

css

<style>
      *{
        margin: 0;
        padding: 0;
      }
      body{
        background-color: #aaa;
      }
      ul{
        width: 400px;
        height: 400px;
        border: 5px solid skyblue;
        margin: 100px auto 0 auto;
        border-radius: 50%;
         background: radial-gradient(green 50%, yellow 100%);;
        position: relative;

      }
      ul li{
        width: 2px;
        height: 15px;
        list-style: none;
        background-color: #fff;
        position: absolute;
        left: 199px;
        transform-origin: center 200px;
      }

      h1{
        width: 2px;
        height: 180px;
        background-color: orange;
        position: absolute;
        left: 199px;
        top:20px;
        -transition: 1s linear;
        transform-origin: center 180px;
      }
      h2{
        width: 6px;
        height: 160px;
        background-color: #fff;
        position: absolute;
        left: 197px;
        top:40px;
        transform-origin: center 160px;
        border-radius:20%;
      }

      h3{
        width: 8px;
        height: 140px;
        background-color: #fff;
        position: absolute;
        left: 196px;
        top:60px;
        transform-origin: center 140px;
        transform: rotate(0deg);
        border-radius: 20%;
      }
      h4{
        width: 30px;
        height: 30px;
        position: absolute;
        left: 185px;
        top:185px;
        border-radius: 50%;
        background-color: orange;
      }

      span{
        display: inline-block;
        width: 20px;
        height: 20px;
        line-height: 20px;
        text-align: center;
        font-size: 24px;
        position: absolute;
        left: -10px;
        top: 28px;
        color: #fff;
      }

</style>

js

(function(){
      var oUl=document.getElementById('box');
      var timer=null;
      for(var i=0,j=0;i<60;i++,j+=6){
        var oLi=document.createElement('li');
        oLi.style.transform='rotate('+j+'deg)';
        if(i%5==0){
          oLi.style.height='20px';
          var oSpan=document.createElement('span');
          oSpan.style.transform='rotate('+(-j)+'deg)';
          if(i==0){
            oSpan.innerHTML='12';
            oSpan.style.fontSize='30px';
            oSpan.style.left='-17px';
          }else{
            oSpan.innerHTML=parseInt(i/5);
            if(i%15==0){
              oSpan.style.fontSize='36px';
            }
          }
          oLi.appendChild(oSpan);
        }
        if(i==0){
          var oH1=document.createElement('h1');
          var oH2=document.createElement('h2');
          var oH3=document.createElement('h3');
          var oH4=document.createElement('h4');
          oUl.appendChild(oH1);
          oUl.appendChild(oH2);
          oUl.appendChild(oH3);
          oUl.appendChild(oH4);
        }
        oUl.appendChild(oLi);
      }
      var oH=document.getElementsByTagName('h3')[0];
      var oM=document.getElementsByTagName('h2')[0];
      var oS=document.getElementsByTagName('h1')[0];
      timer=setInterval(function(){
         var now = new Date();
         var s=now.getSeconds();
         var m=now.getMinutes()+s/60;
         var h=now.getHours()+m/60;
         oS.style.transform='rotate('+s*6+'deg)';
         oM.style.transform='rotate('+m*6+'deg)';
         oH.style.transform='rotate('+(h%12)*30+'deg)';
      },30);

    })();

作品截图

js+css3实现炫酷时钟

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
出现“不能执行已释放的Script代码”错误的原因及解决办法
Aug 29 Javascript
JS返回上一页实例代码通过图片和按钮分别实现
Aug 16 Javascript
基于JQuery的列表拖动排序实现代码
Oct 01 Javascript
vue的toast弹窗组件实例详解
May 14 Javascript
详解小程序缓存插件(mrc)
Aug 17 Javascript
vue组件中的样式属性scoped实例详解
Oct 30 Javascript
JavaScript实现的鼠标跟随特效示例【2则实例】
Dec 22 Javascript
JavaScript动态添加数据到表单并提交的几种方式
Jun 26 Javascript
判断“命令按钮”是否被鼠标单击详解
Jul 31 Javascript
layer iframe 设置关闭按钮的方法
Sep 12 Javascript
js根据后缀判断文件文件类型的代码
May 09 Javascript
vue实现列表垂直无缝滚动
Apr 08 Vue.js
纯js+css实现在线时钟
Aug 18 #Javascript
three.js 利用uv和ThreeBSP制作一个快递柜功能
Aug 18 #Javascript
js+css实现扇形导航效果
Aug 18 #Javascript
js实现3D旋转效果
Aug 18 #Javascript
Vue elementui字体图标显示问题解决方案
Aug 18 #Javascript
详解三种方式在React中解决绑定this的作用域问题并传参
Aug 18 #Javascript
javascript实现移动端上传图片功能
Aug 18 #Javascript
You might like
PHP中基本符号及使用方法
2010/03/23 PHP
让PHP显示Facebook的粉丝数量方法
2014/01/08 PHP
php-fpm服务启动脚本的方法
2018/04/27 PHP
JavaScript 高级篇之函数 (四)
2012/04/07 Javascript
防止xss和sql注入:JS特殊字符过滤正则
2013/04/18 Javascript
解析ScrollPic在ie8下只滚动一遍,然后变为空白 ie6,ie7,chrome,firefox正常
2013/06/26 Javascript
js日期范围初始化得到前一个月日期的方法
2015/05/05 Javascript
JS动画效果打开、关闭层的实现方法
2015/05/09 Javascript
js文字横向滚动特效
2015/11/11 Javascript
JS控制弹出悬浮窗口(一览画面)的实例代码
2016/05/30 Javascript
js实现表单及时验证功能 用户信息立即验证
2016/09/13 Javascript
JavaScript计时器用法分析【setTimeout和clearTimeout】
2017/01/18 Javascript
使用JavaScript实现一个小程序之99乘法表
2017/09/21 Javascript
jquery中done和then的区别(详解)
2017/12/19 jQuery
深入浅析Node.js 事件循环、定时器和process.nextTick()
2018/10/22 Javascript
浅谈Vue 性能优化之深挖数组
2018/12/11 Javascript
NodeJs crypto加密制作token的实现代码
2019/11/15 NodeJs
微信小程序自定义菜单切换栏tabbar组件代码实例
2019/12/30 Javascript
Python深入学习之对象的属性
2014/08/31 Python
用tensorflow实现弹性网络回归算法
2018/01/09 Python
Python中__slots__属性介绍与基本使用方法
2018/09/05 Python
python ChainMap的使用和说明详解
2019/06/11 Python
python多进程(加入进程池)操作常见案例
2019/10/21 Python
python实现密码强度校验
2020/03/18 Python
Python偏函数Partial function使用方法实例详解
2020/06/17 Python
Python调用REST API接口的几种方式汇总
2020/10/19 Python
Python 实现RSA加解密文本文件
2020/12/30 Python
阿拉伯世界最大的电子卖场:Souq埃及
2016/08/01 全球购物
美国购买新书和二手书网站:Better World Books
2018/10/31 全球购物
群众路线教育党课主持词
2014/04/01 职场文书
大学学习计划书范文
2014/05/02 职场文书
旅游与酒店管理专业求职信
2014/07/21 职场文书
个人买房协议书范本
2014/10/06 职场文书
中秋客户感谢信
2015/01/22 职场文书
村主任当选感言
2015/08/01 职场文书
2019 入党申请书范文
2019/07/10 职场文书