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 相关文章推荐
纯js分页代码(简洁实用)
Nov 05 Javascript
javascript setinterval 的正确语法如何书写
Jun 17 Javascript
javascript中字符串拼接详解
Sep 26 Javascript
JQuery遍历json数组的3种方法
Nov 08 Javascript
js编写的treeview使用方法
Nov 11 Javascript
vue实现表格数据的增删改查
Jul 10 Javascript
Three.js利用orbit controls插件(轨道控制)控制模型交互动作详解
Sep 25 Javascript
新版vue-cli模板下本地开发环境使用node服务器跨域的方法
Apr 03 Javascript
JavaScript实现图片上传并预览并提交ajax
Sep 30 Javascript
小程序外卖订单界面的示例代码
Dec 30 Javascript
全面解析js中的原型,原型对象,原型链
Jan 25 Javascript
vue中this.$http.post()跨域和请求参数丢失的解决
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
常见的四种POST 提交数据方式(小总结)
2015/10/08 PHP
在WordPress中获取数据库字段内容和添加主题设置菜单
2016/01/11 PHP
Mac系统完美安装PHP7详细教程
2017/06/06 PHP
php5.6.x到php7.0.x特性小结
2019/08/17 PHP
php接口隔离原则实例分析
2019/11/11 PHP
php使用gearman进行任务分发操作实例详解
2020/02/26 PHP
JQuery通过Ajax提交表单并返回结果
2011/07/31 Javascript
select、radio表单回显功能实现避免使用jquery载入赋值
2013/06/08 Javascript
javascript中的绑定与解绑函数应用示例
2013/06/24 Javascript
js动态设置鼠标事件示例代码
2013/10/30 Javascript
jQuery 滑动方法slideDown向下滑动元素
2014/01/16 Javascript
JS、DOM和JQuery之间的关系示例分析
2014/04/09 Javascript
完美兼容IE,chrome,ff的设为首页、加入收藏及保存到桌面js代码
2014/12/17 Javascript
jQuery元素选择器用法实例
2014/12/23 Javascript
AngularJs实现分页功能不带省略号的代码
2016/05/30 Javascript
js实现水平滚动菜单导航
2017/07/21 Javascript
Node.JS 循环递归复制文件夹目录及其子文件夹下的所有文件
2017/09/18 Javascript
详解nodeJs文件系统(fs)与流(stream)
2018/01/24 NodeJs
Vue监听数据渲染DOM完以后执行某个函数详解
2018/09/11 Javascript
JS集合set类的实现与使用方法示例
2019/02/01 Javascript
基于vue实现圆形菜单栏组件
2019/07/05 Javascript
微信小程序swiper使用网络图片不显示问题解决
2019/12/13 Javascript
vue中的v-model原理,与组件自定义v-model详解
2020/08/04 Javascript
Python中if __name__ == '__main__'作用解析
2015/06/29 Python
python使用psutil模块获取系统状态
2016/08/27 Python
详解python中Numpy的属性与创建矩阵
2018/09/10 Python
详解用pyecharts Geo实现动态数据热力图城市找不到问题解决
2019/06/26 Python
解决tensorflow由于未初始化变量而导致的错误问题
2020/01/06 Python
Python字典添加,删除,查询等相关操作方法详解
2020/02/07 Python
美国南加州的原创极限运动潮牌:Vans(范斯)
2016/08/05 全球购物
美国顶级户外凉鞋品牌:Chacos
2017/03/27 全球购物
美丽的现代设计家具:2Modern
2018/07/26 全球购物
什么是java序列化,如何实现java序列化
2012/11/14 面试题
审计工作个人的自我评价
2013/12/25 职场文书
石油工程专业毕业生求职信
2014/04/13 职场文书
电子信息专业应届生自荐信
2014/06/04 职场文书