利用CSS3 动画 绘画 圆形动态时钟


Posted in HTML / CSS onMarch 20, 2018

 什么是动画?这是我们应该先了解的问题。按照百度百科的解释动画是采用逐帧拍摄对象并连续播放而形成运动的影像技术。不论拍摄对象是什么,只要它的拍摄方式是采用的逐格方式,观看时连续播放形成了活动影像,它就是动画。放在 CSS3 中大致可以理解为使元素从一种样式逐渐变为另一种样式,即将多个过渡效果放在一起形成的效果。CSS3 动画是通过 "关键帧",来控制动画的每一步。这里又有一个问题,什么是关键帧?我理解为定义动画执行的时间点和在该时间点上的样式是什么。

先给大家展示效果图:

利用CSS3 动画 绘画 圆形动态时钟 

通过 CSS3 动画绘制动态时钟的步骤

定义页面布局和样式

定义关键帧

  • 定义页面布局和样式
  • 定义关键帧
  • 调用动画实现动态效果调用动画实现动态效果

注意点

  • 在分针和秒针进行旋转时要保证是匀速旋转,即 transform-timing-function 速度曲线的值为 linear
  • 在分针和秒针进行旋转时要保证旋转原点的位置,即 transform-origin 的值要为 center、bottom(也可以利用像素和百分比进行改变)
  • 分针和秒针进行旋转的速度要区分

以下是 HTML 源码

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title>clock</title>
    </head>
    <body>
        <div id="main">
            <div id="second"></div>
            <div id="minute"></div>
        </div>
    </body>
</html>

以下是 CSS3 源码

#main {
    width: 300px;
    height: 300px;
    border: 5px solid #0881A3;
    border-radius: 50%;
    margin: 50px auto 0;
    position: relative;/*定义表盘样式*/
}
#second {
    width: 5px;
    height: 120px;
    background: #393E46;
    position: absolute;
    top: 30px;
    left: 150px;
    transform-origin: center bottom;
    animation: second 60s linear infinite;/*定义秒针样式和动态效果*/
}
#minute {
    width: 10px;
    height: 80px;
    background: #40A798;
    position: absolute;
    top: 70px;
    left: 147px;
    transform-origin: center bottom;
    animation: minute 3600s linear infinite;/*定义分针样式和动态效果*/
}
@keyframes second {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}/*定义秒针过渡效果*/
@keyframes minute {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}/*定义分针过渡效果*/

总结

以上所述是小编给大家介绍的利用CSS3 动画 绘画 圆形动态时钟,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

HTML / CSS 相关文章推荐
CSS3制作轮播图的一种方法
Nov 11 HTML / CSS
CSS3实现渐变背景兼容问题
May 06 HTML / CSS
HTML5拖放功能_动力节点Java学院整理
Jul 13 HTML / CSS
Html5实现iPhone开机界面示例代码
Jun 30 HTML / CSS
字中字效果的实现【html5实例】
May 03 HTML / CSS
用html5的canvas和JavaScript创建一个绘图程序的简单实例
Jul 06 HTML / CSS
浅谈关于html5中图片抛物线运动的一些心得
Jan 09 HTML / CSS
微信小程序canvas实现水平、垂直居中效果
Feb 05 HTML / CSS
HTML5调用手机发短信和打电话功能
Apr 29 HTML / CSS
html5的pushstate以及监听浏览器返回事件的实现
Aug 11 HTML / CSS
详解淘宝H5 sign加密算法
Aug 25 HTML / CSS
html网页引入svg图片的4种方式
Aug 05 HTML / CSS
css3 矩阵的使用详解
Mar 20 #HTML / CSS
CSS3 :default伪类选择器使用简介
Mar 15 #HTML / CSS
css3编写浏览器背景渐变背景色的方法
Mar 05 #HTML / CSS
CSS3下的渐变文字效果实现示例
Mar 02 #HTML / CSS
CSS3 @keyframes简单动画实现
Feb 24 #HTML / CSS
css3 实现圆形旋转倒计时
Feb 24 #HTML / CSS
css3 仿写阿里云水纹效果的示例代码
Feb 10 #HTML / CSS
You might like
利用PHP扩展vld查看PHP opcode操作步骤
2013/03/04 PHP
php使用多个进程同时控制文件读写示例
2014/02/28 PHP
php连接sftp的作用以及实例代码
2019/09/23 PHP
js innerHTML 改变div内容的方法
2013/08/03 Javascript
控制文字内容的显示与隐藏示例
2014/06/11 Javascript
JavaScript数据结构和算法之图和图算法
2015/02/11 Javascript
javascript 常见功能汇总
2015/06/11 Javascript
JS添加删除DIV的简单实例
2016/07/08 Javascript
详解vue 模版组件的三种用法
2017/07/21 Javascript
jQuery实现页码跳转式动态数据分页
2017/12/31 jQuery
jqGrid表格底部汇总、合计行footerrow处理
2019/08/21 Javascript
使用JS来动态操作css的几种方法
2019/12/18 Javascript
一文秒懂JavaScript构造函数、实例、原型对象以及原型链
2020/08/25 Javascript
[40:55]Liquid vs LGD 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
浅谈python socket函数中,send与sendall的区别与使用方法
2017/05/09 Python
利用pyinstaller将py文件打包为exe的方法
2018/05/14 Python
Flask框架实现给视图函数增加装饰器操作示例
2018/07/16 Python
python模块导入的细节详解
2018/12/10 Python
Python numpy线性代数用法实例解析
2019/11/15 Python
Python完全识别验证码自动登录实例详解
2019/11/24 Python
Python之关于类变量的两种赋值区别详解
2020/03/12 Python
css3 条纹化和透明化表格Firefox下测试成功
2014/04/15 HTML / CSS
可自定义箭头样式的CSS3气泡提示框
2016/03/16 HTML / CSS
让IE下支持Html5的placeholder属性的插件
2014/09/02 HTML / CSS
印度最大的网上花店:Ferns N Petals(鲜花、礼品和蛋糕)
2017/10/16 全球购物
be2台湾单身男女交友:全球网路婚姻介绍的领导品牌
2019/10/11 全球购物
保加利亚运动鞋购物网站:SneakerStudio.bg
2020/12/23 全球购物
档案接收函
2014/01/13 职场文书
新闻专业学生的自我评价
2014/02/13 职场文书
《曹刿论战》教学反思
2014/03/02 职场文书
愚人节活动策划方案
2014/03/11 职场文书
元旦文艺汇演主持词
2014/03/26 职场文书
2014年向国旗敬礼活动总结
2014/09/27 职场文书
行政复议决定书
2015/06/24 职场文书
初中毕业感言300字
2015/07/31 职场文书
初三化学教学反思
2016/02/22 职场文书