如何使用css3绘制出圆形动态时钟(详解)

在这个时间就是金钱的时代,人们的时间意识越来越强,不仅仅是平时的日常生活,在上网的同时也是尤为如此,那么在前端开发的时候,学会使用css3制作一个时钟就显得很有必要了。本篇文章给大家带来的内容是关于,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

使用css3绘制出圆形动态时钟的原理

众所周知的是div形状是方形的,那么我们首先需要使用border-radius属性将其变换成圆形。

为了使指针转动起来,我们需要使用 -webkit-transform-origin:center 100px;来设置我们的旋转基点。然后利用 -webkit-transform: rotate(0);让我们的li旋转相应的角度形成相应的刻度。

设计好刻度之后,需要涉及一个nth-of-type()的选择器,用来规定其属于父元素的第几个子元素。

立即学习“前端免费学习笔记(深入)”;

在圆形时钟的正中心我们要设一个div icon用于指针的连接点。

然后我们利用js获取div之后对表盘的刻度进行渲染。

最后开一个定时器,每隔一秒执行一次函数。

使用css3绘制出圆形动态时钟的代码

        钟表        #wrap{width:200px; height:200px; border:2px solid #000; margin:100px auto;border-radius:50%; position:relative;}        #wrap ul{margin:0; padding:0; height:200px; position:relative; list-style:none;}        #wrap ul li{width:2px;  height:6px; background:#000; position:absolute; left:99px; top: 0;-webkit-transform-origin:center 100px;}        /*#wrap ul li:nth-of-type(1){-webkit-transform: rotate(0);}        #wrap ul li:nth-of-type(2){-webkit-transform: rotate(6deg);}        #wrap ul li:nth-of-type(3){-webkit-transform: rotate(12deg);}        #wrap ul li:nth-of-type(4){-webkit-transform: rotate(18deg);}        #wrap ul li:nth-of-type(5){-webkit-transform: rotate(24deg);}        #wrap ul li:nth-of-type(6){-webkit-transform: rotate(30deg);}        #wrap ul li:nth-of-type(7){-webkit-transform: rotate(36deg);}        #wrap ul li:nth-of-type(8){-webkit-transform: rotate(42deg);}*/        #wrap ul li:nth-of-type(5n+1){ height:12px;}        #hour{width:6px;  height:45px; background:#000; position:absolute; left:97px; top:55px;-webkit-transform-origin:bottom ;}        #min{width:4px;  height:65px; background:#999; position:absolute; left:98px; top:35px;-webkit-transform-origin:bottom ;}        #sec{width:2px;  height:80px; background:red; position:absolute; left:99px; top:20px;-webkit-transform-origin:bottom ;}        .icon{width:20px; height:20px; background:#000; border-radius:50%; position:absolute; left:90px; top: 90px;}        
    <!--
  • -->
var oList=document.getElementById("list");//获取到刻度 var oCss=document.getElementById("css"); var oHour=document.getElementById("hour");//获取时针 var oMin=document.getElementById("min");//获取分针 var oSec=document.getElementById("sec");//获取秒针 var oLi=""; var sCss=""; for (var i=0;i<60;i++) { //一个表盘总共是60个刻度 sCss+="#wrap ul li:nth-of-type("+(i+1)+"){-webkit-transform: rotate("+i*6+"deg);}"; oLi+="
  • "; }; oList.innerHTML=oLi; oCss.innerHTML+=sCss;//表盘刻度渲染完成 toTime(); setInterval(toTime,1000); function toTime(){ var oDate=new Date();//获取当前时间 var iSec=oDate.getSeconds();//获取当前秒 var iMin=oDate.getMinutes()+iSec/60;//获取当前分 var iHour=oDate.getHours()+iMin/60;//获取当前时 oSec.style.WebkitTransform="rotate("+iSec*6+"deg)";//秒针转动角度1秒6度 (表盘一圈360度一圈60秒所以一秒6度) oMin.style.WebkitTransform="rotate("+iMin*6+"deg)";//分钟转动角度1分6度 (表盘一圈360度一圈60分所以一分6度) oHour.style.WebkitTransform="rotate("+iHour*30+"deg)";//时针转动角度一小时30度(表盘一圈360度一圈12小时所以一小时30度) };

    实例效果如图所示

    20180312211258103.gif

    以上就是如何使用css3绘制出圆形动态时钟(详解)的详细内容,更多请关注创想鸟其它相关文章!

    版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
    如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
    发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1612193.html

    (0)
    打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
    上一篇 2025年12月24日 02:50:04
    下一篇 2025年12月24日 02:50:14

    相关推荐

    • 如何使用css3+html5来制作文字霓虹灯效果(付完整代码)

      在科技日益发展的今天,人们对于审美越来越挑剔,这就要求我们对于前端开发的态度更加的严谨的同时,需要加入新鲜的元素,以达到吸引目光的目的。那么今天本文带大家了解一下如何使用css3+html5来制作文字霓虹灯效果,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 使用css3+html5…

      好文分享 2025年12月24日
      000
    • 如何使用HTML5+CSS3来创建淡入效果的提示框(附完整代码)

      当我们在浏览网页的时候经常看到一些提示工具,最常见的就是提示框样式,提示框不仅可以很明确的起到导航作用,还可以将隐藏的信息展示出来的同时不占用网页空间,所以在前端开发的过程中需要了解提示工具的编写。那么本文将向大家展示一下一个提示框的特殊效果:淡入效果的提示框。有一定的参考价值,有需要的朋友可以参考…

      2025年12月24日
      000
    • css中display:none与visibility:hidden的区别分析

      本篇文章给大家带来的内容是关于css中display:none与visibility:hidden的区别分析,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 还记得面试时被问起”请说说display:none和visibility:hidden的区别”吗?是不…

      2025年12月24日
      000
    • css3新增了哪些属性样式?css3常用的新特性介绍

      css3新增的属性样式(新特性)有哪些?本章就给大家重点介绍几种css3中常用的新增属性样式(新特性)。有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所帮助。 在介绍css3新增的属性样式(新特性)前,我们要先知道什么是css3。    CSS 是层叠样式表 ( Cascading Sty…

      好文分享 2025年12月24日
      000
    • 如何使用D3和GSAP实现一个舞动的效果(附源码)

      本篇文章给大家带来的内容是关于如何使用d3和gsap实现一个舞动的效果(附源码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 效果预览 源代码下载 https://github.com/comehope/front-end-daily-challenges 代码解读 定义 dom…

      2025年12月24日
      000
    • 如何使用CSS3实现导航下拉菜单(附完整代码)

      在当下网页结构当中,导航的菜单栏占据了一个很重要的位置,因为不仅仅可以展示示例,还可以给你对于内容最直观的印象,众所周知的是在html中 可以对菜单进行分级,那么我们可以配合css3实现导航下拉菜单。本篇文章给大家带来的内容是关于如何使用css3实现导航下拉的菜单,有一定的参考价值,有需要的朋友可以…

      2025年12月24日
      000
    • 如何使用css3实现3D的翻牌效果(附完整代码)

      最近我在学习有关css3的相关知识,真心觉得这是一门非常实用且炫酷的技术,不仅可以代替以前图片表现的图案和形状,还可以制作一些特殊的效果。比如阴影效果、渐变效果等,其中3d转换效果尤为炫酷。本篇文章给大家带来的内容是关于如何使用css3实现3d的翻牌效果,有一定的参考价值,有需要的朋友可以参考一下,…

      2025年12月24日
      000
    • 如何使用css3实现条形进度条效果(附完整代码)

      在音乐和视频播放的时候,不止可以直接查看播放时间,也可以通过观察进度条来查看播放时间,观察进度条这种方法会更加直观的告诉用户还有多久结束,所以进度条是一种非常实用的特殊效果。本文在介绍如何使用css3实现进度条效果的基础上,重点探讨了其具体步骤,本文内容紧凑,希望大家可以有所收获。 使用css3实现…

      2025年12月24日
      000
    • 环形进度条效果怎么实现?用css3实现环形进度条效果代码示例

      上一篇文章我们介绍了如何使用css3实现条形进度条效果(附完整代码),了解到进度条的实用性,那么今天来向大家介绍一下另外一种形式的进度条:环形进度条。 这种进度条适合应用于页面加载的时候和环形计时器的页面。本篇文章给大家带来的内容是关于如何使用css3实现环形进度条效果,有一定的参考价值,有需要的朋…

      2025年12月24日
      000
    • 如何使用纯CSS实现电源开关控件(附源码)

      本篇文章给大家带来的内容是关于如何使用纯css实现电源开关控件(附源码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 效果预览 源代码下载 https://github.com/comehope/front-end-daily-challenges 代码解读 定义 dom,包含 …

      2025年12月24日
      000
    • 如何使用HTML5+css3制作出12种常用的按钮开关样式(附完整代码)

      现如今前端网页的开发越来越注重设计感,这些设计感更体现在细节处,今天向大家具体介绍一下各式各样的开关按钮是如何使用html5+css3制作出来的,希望可以帮到大家。 使用HTML5+css3制作按钮开关的原理 根据设计的要求填充各种颜色。 按钮开关的形状需要具体问题具体分析,如圆形按钮开关需要用到b…

      2025年12月24日
      000
    • 如何使用css3实现字体内发光效果(详解)

      在互联网日益发展的当今社会,人们对于网页用户体验的要求越来越苛刻,这就催生了更多的特殊效果的衍生,比如阴影效果,发光效果等,那么本文将向大家介绍一下如何使用css3实现字体发光的特殊效果,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 使用css3实现字体发光效果原理 首先我们要输入…

      2025年12月24日
      000
    • 如何使用css3实现文字的单阴影效果和多重阴影效果(附完整代码)

      最近几年在web网页开发的过程中越来越在意人机交互和用户体验,不仅颜色更加的多样化,而且各种特殊效果也是让人目不暇接。今天主要向大家介绍一下在文本里如何实现阴影的特殊效果,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 使用css3实现文本阴影效果的原理 实现阴影效果主要是用text…

      2025年12月24日
      000
    • CSS3中的pointer-events属性介绍

      本章给大家介绍一个css3中超实用的属性:css3 pointer-events属性。有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所帮助。 最近发现了一个叫pointer-events的css属性,是一个与javascript有关的属性,pointer-events直译为指针事件,当把值…

      好文分享 2025年12月24日
      000
    • 如何使用css3制作圆形旋转动画(附完整代码)

      随着css3的广泛应用,人们浏览的web网页越来越多元化,而前端开发者也越来越注重人机交互和用户体验。从一开始的文字到后来的图片,以至于现在的动画特效,人们对于网页的要求也越来越挑剔,那么今天给大家展示一下如何使用css3制作旋转动画。本文在介绍如何使用css3制作旋转动画的基础上,重点探讨了其具体…

      2025年12月24日
      000
    • css3如何添加文字阴影效果?text-shadow设置文字阴影效果

      阴影效果是一个常见也很实用的效果,相信有些朋友在使用阴影效果来美观网页页面时,有时会有一些疑问,比如:字体文字阴影是怎样设置的等等。那么本章就给大家谈谈css3是如何设置字体文字阴影的。有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所帮助。 其实在css3中有一个很实用的属性可以给字体文字…

      2025年12月24日
      000
    • 如何使用CSS3实现弹性盒子布局方式

      传统的布局方案是依据float,display和position的盒子模型,随着开发语言的完善,弹性盒布局模型成为web开发人员工具箱中的一个很好的工具,因为摈弃了传统盒子复杂的设置并且可以很完美的契合开发者对于页面兼容性的要求,即当页面需要适应不同的屏幕大小以及设备类型时依然可以确保元素拥有恰当的…

      2025年12月24日 好文分享
      000
    • css3文字怎么描边?css3字体描边的实现方法

      在网页中有时会看到文字的轮廓都用边描绘出来,这其实就是字体的描边,以前为文字描边可能都会需要借助ps之类的工具,但是自从css3出现以后,文字的描边就不需要借助其他工具就可以直接实现了,所以,接下来这篇文章就来给大家分享关于css3实现字体描边的方法。 推荐手册:CSS在线手册 首先我们来看一看cs…

      2025年12月24日 好文分享
      000
    • 如何使用css3实现图片的自动轮播特效(附完整代码)

      本文在介绍如何使用css3实现图片的轮播特效的基础上,重点探讨了其具体步骤,本文内容紧凑,希望大家可以有所收获。 大家在浏览网页的过程中,会遇见一种名叫图片轮播的特殊效果:在同样的位置不同的图片会根据时间的变化循环播放,达到一种类似于播放幻灯片的效果。那么我们在网页开发的过程中如何实现图片的轮播特效…

      2025年12月24日
      000
    • 如何使用css3画三角形?css3实现三角形的画法原理介绍

      css的出现让网页有了更多的风格,尤其是css3的应用,让网页呈现了更多好看的效果,那么,css3中可以有哪些效果呢?今天的这篇文章就来教大家如何使用css3画出一个三角形?话不多说,让我们来直接看正文。 首先看一下css3画三角形的原理 我们先来看一段代码: 当我们设置一个div其width与he…

      2025年12月24日 好文分享
      000

    发表回复

    登录后才能评论
    关注微信