关于HTML5和CSS3实现时钟的效果

利用html5,css实现钟摆效果 ,在项目中经常会遇到,今天把基于html5+css3实现简单的时钟效果的实现代码分享到本站平台,需要的朋友参考下吧

目的:

利用html5,css实现钟摆效果

知识点:

1) 利用position/left/top和calc()实现元素的水平和垂直居中;

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

2) 利用CSS3的animation/transform/transform-origin属性定义动画;

3) 利用transform-origin实现旋转原点的圆心调整

废话不多说了,直接看代码吧,具体代码如下所示:

                    li{            list-style:none;        }        #box{            width: 400px;            height: 400px;            position: absolute;            top:calc(50% - 200px);            left:calc(50% - 200px);            border: 2px solid palegoldenrod;        }        #dial{            width: 200px;            height: 200px;            position: absolute;            top:calc(50% - 100px);            left:calc(50% - 100px);            border: 2px solid cyan;            border-radius: 50%;        }           .scaleIndex{            width: 4px;            height: 12px;            position: absolute;            top: 0;            left: calc(50% - 2px);            background-color: gray;            transform-origin: 2px 100px;        }        .angle30{transform : rotate(30deg);}        .angle60{transform : rotate(60deg);}        .angle90{transform : rotate(90deg);}        .angle120{transform : rotate(120deg);}        .angle150{transform : rotate(150deg);}        .angle180{transform : rotate(180deg);}        .angle210{transform : rotate(210deg);}        .angle240{transform : rotate(240deg);}        .angle270{transform : rotate(270deg);}        .angle300{transform : rotate(300deg);}        .angle330{transform : rotate(330deg);}        #fixPoint{            width: 10px;            height: 10px;            position: absolute;            top:calc(50% - 5px);            left:calc(50% - 5px);            background-color: cadetblue;            border-radius: 50%;        }        #hourHand{            width: 6px;            height: 70px;            position:absolute;            top: 40px;            left: calc(50% - 3px);            background-color: darkblue;            transform-origin: 50% 60px;        }        #minuteHand{            width: 4px;            height: 75px;            position:absolute;            top: 35px;            left: calc(50% - 2px);            background-color: yellow;            transform-origin: 50% 65px;        }        #secondHand{            width: 2px;            height: 90px;            position:absolute;            top: 20px;            left: calc(50% - 1px);            background-color: red;            transform-origin: 50% 80px;        }        

window.onload = function(){ var hourHand = document.getElementById('hourHand'); var minuteHand = document.getElementById('minuteHand'); var secondHand = document.getElementById('secondHand');setInterval(function(){ var currentTime = new Date(); var hourValue = currentTime.getHours(); var hourAngle = hourValue / 24 * 360 + 'deg'; var minuteValue = currentTime.getMinutes(); var minuteAngle = minuteValue / 60 * 360 + 'deg'; var secondValue = currentTime.getSeconds(); var secondAngle = secondValue / 60 * 360 + 'deg'; console.log(hourAngle);// 方法一:利用jquery的css()增加属性var cmdHour = 'rotate('+ hourAngle +')';$('#hourHand').css({transform:'rotate('+ hourAngle +')'});var cmdMinute = 'rotate('+ minuteAngle +')';$('#minuteHand').css({transform:cmdMinute});var cmdSecond = 'rotate('+ secondAngle +')';$('#secondHand').css({transform:cmdSecond});// 方法二:利用DOM元素的style属性设置// hourHand.style.transform = 'rotate('+ hourAngle + ')';// minuteHand.style.transform = 'rotate('+ minuteAngle + ')';// secondHand.style.transform = 'rotate('+ secondAngle + ')'; },1000);}

以上就是本文的全部内容,希望对大家的学习有所帮助,更多相关内容请关注PHP中文网!

相关推荐:

html5和css3以及jquery实现音乐播放器

使用JavaScript和canvas实现图片的裁剪

以上就是关于HTML5和CSS3实现时钟的效果的详细内容,更多请关注创想鸟其它相关文章!

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年12月24日 01:34:02
下一篇 2025年12月24日 01:34:10

相关推荐

  • CSS3中使用RGBa来调节透明度的方法

    这篇文章主要介绍了css3中使用rgba来调节透明度的教程,rgba是rgb色彩模型的一个扩展,这个缩写词代表红绿蓝三原色的首字母,alpha值代表颜色的透明度或者说不透明度,需要的朋友可以参考下 在 CSS3 中,增加了一个 opacity 属性,允许开发者设置元素的透明度,现在 opacity …

    2025年12月24日
    000
  • 使用 css3 实现圆形进度条的方法

    本篇文章主要介绍了使用 css3 实现圆形进度条的示例,这里整理了详细的代码,非常具有实用价值,需要的朋友可以参考下 在开发微信小程序的时候,遇到圆形进度条的需求。使用canvas绘图比较麻烦: 1、为了实现在不同屏幕上面的适配,必须动态的计算进度条的大小; 2、在小程序中,canvas的画布具有最…

    2025年12月24日
    000
  • CSS3实现背景透明文字不透明的效果

    这篇文章主要介绍了css3实现背景透明文字不透明的示例代码的相关资料,内容挺不错的,现在分享给大家,也给大家做个参考。 最近遇到一个需求,要在图片上显示带有半透明背景的文字,效果如下图所示: 需求.png 看到这个需求之后,第一反应是使用CSS3中的opacity设置元素的透明度。 背景透明,文字也…

    2025年12月24日 好文分享
    000
  • 利用css3设置没有上下边的列表间隔线的方法

    这篇文章主要给大家介绍了利用css3如何设置没有上下边的列表间隔线,文中分享了两种解决方法,分别是利用通用兄弟选择器( ~ )和伪类选择器( :first-of-type / :last-of-type )来实现的,给出了详细的示例代码供大家参考学习,下面来一起看看吧。 本文主要介绍了关于利用css…

    2025年12月24日
    000
  • CSS3 3D旋转rotate效果的使用介绍

    这篇文章主要为大家详细介绍了css3 3d旋转rotate效果实例,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 本文实例为大家分享了CSS3 3D旋转rotate效果实例,供大家参考,具体内容如下 效果图: 示例代码 立即学习“前端免费学习笔记(深入)”; 3D旋转的Demo #experim…

    2025年12月24日 好文分享
    000
  • CSS3和jQuery实现跟随鼠标方位的Hover特效

    这篇文章主要介绍了基于css3和jquery实现跟随鼠标方位的hover特效的相关资料,需要的朋友可以参考下 今天我们来学习如何通过CSS3的特性和jQuery来创建一个感知鼠标滑动方向的hover效果。当鼠标滑进的时候,遮罩层会从上次鼠标滑出的方向滑入,当鼠标滑出的时候,遮罩层会跟随鼠标,从鼠标滑…

    好文分享 2025年12月24日
    000
  • js和CSS3实现卡牌旋转切换效果

    这篇文章主要为大家详细介绍了js css3实现卡牌旋转切换效果,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 我们经常会在游戏里看到一些几张卡牌左右切换的效果,中间的一张最突出醒目,向左或向右滑动可切换到另一张,今天我们就用CSS3来实现下这种效果。 我们先来看个demo,具体的样式各位可以自己…

    2025年12月24日
    000
  • 如何利用CSS3实现3D翻书效果

    这篇文章主要介绍了css3实现3d翻书效果,基于css3新属性animation及transform实现类似翻书效果,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 先上效果图:(样式有点丑,可以忽略一下下,效果出来了就好,后期加到其他项目中方便更改0.0) 类似翻书效果,原本的意思是使用JS来控…

    2025年12月24日
    000
  • 利用CSS3来匹配横屏竖屏的方法

    这篇文章主要介绍了使用css3来匹配横屏竖屏的简单方法,主要使用到了css3中新加入的@media,需要的朋友可以参考下 写在同一个CSS中  @media screen and (orientation: portrait) { /*竖屏 css*/ } @media screen and (or…

    好文分享 2025年12月24日
    000
  • 用css3实现走马灯的效果

    这篇文章主要介绍了纯css3实现走马灯效果,主要用到的css3技术有:keyframes、perspective、perspective-origin、transform(translate、rotate)、animation、transform-origin,有需要的小伙伴参考下 纯css3实现了…

    2025年12月24日
    000
  • 利用Css3和Js制作时钟的代码

    这篇文章主要介绍了关于利用Css3和Js制作时钟的代码,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下 Css3+Js实现漂亮时钟,浏览器支持IE9/GoogleChrome/FireFox/Safari等等,感兴趣的朋友可以下载测试,希望对你学习css3有所帮助 Css3+Js 漂亮…

    2025年12月24日
    000
  • CSS3中线性颜色渐变的实现

    这篇文章主要介绍了css3中线性颜色渐变的一些实现方法,包括分safari和chrome的webkit内核与firefox的gecko内核两种情况,需要的朋友可以参考下 为了显示一个渐变而专门制作一个图片的做法是不灵活的,而且很快会成为一种不好的做法。但是遗憾的是,截至写这篇文章,可能还必须这样做,…

    2025年12月24日
    000
  • 利用CSS3实现的文字定时向上滚动

    大家以前基本是用javascript来实现文字定时向上滚动的效果,那么今天给大家分享下利用css3来实现这一效果,有需要的可以参考学习。 话不多说,直接上实例代码 moveUp ul,li{ margin:0; padding:0; } li{ list-style:none; } .contain…

    好文分享 2025年12月24日
    000
  • 利用css3仿造window7的开始菜单

    相当逼真,css3果然强悍。要留意的点依旧是哪几项,难点在于细节的微调,尤其是渐变背景的制作,css3中非常灵活,下次有机会,发篇css3渐变背景的详细教程。   相当逼真,css3果然强悍。友情提示:请勿在IE下浏览。来看下原作者的设计草图: 简明创建过程  第一步 :创建如下菜单结构 @@##@…

    2025年12月24日
    000
  • IE下模拟css3中box-shadow的效果

    这篇文章主要介绍了关于ie下模拟css3中box-shadow的效果,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下 在ie下模拟css3中的box-shadow(阴影)可以使用ie的Shadow(阴影)滤镜来实现,需要注意的是该滤镜必须配合background属性一起使用,否则该滤镜…

    好文分享 2025年12月24日
    000
  • 关于CSS3网格的的解析

    在这篇文章中,我们将来看一些css3新属性,从而用html和css处理网格的时候更容易。但首先让我们讨论一点html和css网格的历史,了解清楚为什么以前很困难 一、网格简史 曾几何时,我们的布局是一团糟。表格和框架是用于创建多列布局的主要工具。虽然他们能完成工作(但其实非常糟糕)。 把目光投向今天…

    2025年12月24日
    000
  • 如何使用css3实现input输入框颜色渐变发光的效果

    这篇文章主要介绍了关于如何使用css3实现input输入框颜色渐变发光的效果,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下 css3都推出好久了,虽然各大主流浏览器对其兼容性还不是很好,特别是IE…但通过添加-moz- -webkit-这样的前缀可以在chrome和Firefox下获…

    好文分享 2025年12月24日
    000
  • 如何实现用css3显示隐藏一个div特效

    这篇文章主要介绍了关于如何实现用css3显示隐藏一个div特效,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下 显示隐藏一个p特效的方法有很多,下为大家介绍下使用纯css3是如何实现的,感兴趣的朋友可以参考下 #showp { background-color:red; width:3…

    好文分享 2025年12月24日
    000
  • 如何用css3实现当鼠标移进去时当前亮其他变灰的效果

    这篇文章主要介绍了用css3实现当鼠标移进去时当前亮其他变灰效果,需要的朋友可以参考下 用css3实现鼠标移进去当前亮其他变灰 *{margin: 0;padding: 0;font-size:12px;} .wrapper{border: 1px #708090 solid;width: 900p…

    好文分享 2025年12月24日
    000
  • 如何使用CSS3中的calc()属性来表达尺寸

    这篇文章主要介绍了关于如何使用css3中的calc()属性来表达尺寸,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下 calc()的用法十分巧妙,可以像我们在学校做数学应用题那样列式子来计算长度宽度等值,从而一定程度上实现自适应布局,下面我们就来介绍如何使用CSS3中的calc()属性…

    好文分享 2025年12月24日
    000

发表回复

登录后才能评论
关注微信