热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

css时钟样式,css时间轴样式

css怎么样制作钟表代码如下:!DOCTYPEhtmlhtmlxmlnsheadmetacharsetutf-8titlecanvas实例--制作时钟titleheadbodyca

css怎么样制作钟表

代码如下:

!DOCTYPE html

html lang="en" xmlns=""

head

meta charset="utf-8" /

titlecanvas实例--制作时钟/title

/head

body

canvas id="canvas"

您的浏览器版本太低啦!可以换了!

/canvas

script

//获取canvas

var canvas = document.getElementById("canvas");

//设置环境

var cxt = canvas.getContext("2d");

//制作时钟的函数

function DrawClock() {

//清除画布

cxt.clearRect(0,0,500,500);

//获取当前时间的时,分,秒

var now = new Date();

var hour = now.getHours();

var min = now.getMinutes();

var sec = now.getSeconds();

//小时必须获取浮点型(小时+分数---转化为的小时)

hour = hour + min / 60;

//将24小时转换为12小时

hour = hour 12 ? hour - 12 : hour;

//制作表盘

cxt.beginPath();

cxt.lineWidth = 10;

cxt.strokeStyle = "#ABCDEF";

cxt.arc(250, 250, 200, 0, 360, false);

cxt.stroke();

cxt.closePath();

//刻度

//时针

for (var i = 0; i 12; i++) {

cxt.save();

cxt.lineWidth = 7;

cxt.strokeStyle = "red";

//设置0,0点

cxt.translate(250, 250);

//再设置旋转角度

cxt.rotate(i * 30 * Math.PI / 180);

cxt.beginPath();

cxt.moveTo(0, -170);

cxt.lineTo(0, -190);

cxt.closePath();

cxt.stroke();

cxt.restore();

}

//分针

for (var i = 0; i 60; i++) {

//为避免不同颜色的重叠,

//在时针刻度与分针刻度重叠的位置,不画分针

if (i % 5 == 0) continue;

cxt.save();

//设置刻度粗细

cxt.lineWidth = 5;

cxt.strokeStyle = "purple";

//设置画布的0,0点

cxt.translate(250, 250);

//设置旋转角度

cxt.rotate(i * 6 * Math.PI / 180);

//画分针刻度

cxt.beginPath();

cxt.moveTo(0, -180);

cxt.lineTo(0, -190);

cxt.closePath();

cxt.stroke();

cxt.restore();

}

//时针

cxt.save();

//设置时针风格

cxt.lineWidth = 7;

cxt.strokeStyle = "pink";

//设置异次元空间的0,0点

cxt.translate(250, 250);

//设置旋转角度

cxt.rotate(hour * 30 * Math.PI / 180);

cxt.beginPath();

cxt.moveTo(0, -140);

cxt.lineTo(0, 10);

cxt.closePath();

cxt.stroke();

cxt.restore();

//分针

cxt.save();

//设置分针风格

cxt.lineWidth = 5;

cxt.strokeStyle = "orange";

//设置异次元空间的0,0点

cxt.translate(250, 250);

//设置旋转角度

cxt.rotate(min * 6 * Math.PI / 180);

cxt.beginPath();

cxt.moveTo(0, -160);

cxt.lineTo(0, 15);

cxt.closePath();

cxt.stroke();

cxt.restore();

//秒针

cxt.save();

//风格

cxt.strokeStyle = "yellow";

cxt.lineWidth = 3;

//重置0,0点

cxt.translate(250, 250);

//设置旋转角度

cxt.rotate(sec*6*Math.PI/180);

//画图

cxt.beginPath();

cxt.moveTo(0, -170);

cxt.lineTo(0, 20);

cxt.stroke();

//画出时针,分针,秒针的交叉点

cxt.beginPath();

cxt.arc(0, 0, 5, 0, 360, false);

cxt.closePath();

//设置填充样式

cxt.fillStyle = "blue";

cxt.fill();

//设置笔触样式---秒针已设置

cxt.stroke();

//设置秒针前端的小圆点

cxt.beginPath();

cxt.arc(0, -150, 5, 0, 360, false);

cxt.closePath();

//设置填充样式

cxt.fillStyle = "blue";

cxt.fill();

//设置笔触样式

cxt.stroke();

cxt.closePath();

cxt.restore();

}

//调用函数

DrawClock();

//设置时钟转动起来

setInterval(DrawClock, 1000);

/script

/body

/html

怎样用html和css做时钟的转动效果

css 有个 animation 可以实现动画,仅仅是动起来,没法实现实时与系统对时(需要js)

60秒跳动60次旋转360度。(可以使用linear 线性运动)

# animation:anim_mm 60s linear infinite;

animation:mm 60s steps(60) infinite;

@keyframes mm{

to{ transform:rotate(360deg) ;}

}

如何用jQuery和CSS3制作数字时钟

这个时钟不需要很多HTML,这是因为它很大的一部分,像工作日的名称和数字都是动态生成的。 下面是你需要在你页面上使用时钟时要有的标签:

index.html

div id="clock" class="light"

div class="display"

div class="weekdays"/div

div class="ampm"/div

div class="alarm"/div

div class="digits"/div

/div

/div

主元素为#clock的div,包含.display的div,用于容纳平日列表、AM/PM标记、闹铃和时间。 下面代码为每个数字生成一个标签:

div class="zero"

span class="d1"/span

span class="d2"/span

span class="d3"/span

span class="d4"/span

span class="d5"/span

span class="d6"/span

span class="d7"/span

/div

.digits元素包含6个像这样带span的div,每个div为时钟的一个数字。就像你在上面片段中所见到的一样,这些div拥有一个从0到9的样式名称,并且包含7个带独立样式的span元素,这些span是数字的一部分,像老的数字时钟一样:

数字说明

它们完全用CSS样式渲染且默认设置为 opacity:0 。定义在它们父div上的样式将决定它们的可见性。下面是数字“0”的CSS:

assets/css/styles.css

/* 0 */

#clock .digits div.zero .d1,

#clock .digits div.zero .d3,

#clock .digits div.zero .d4,

#clock .digits div.zero .d5,

#clock .digits div.zero .d6,

#clock .digits div.zero .d7{

opacity:1;

}

除了中间一个,所有的片断都是可见的,我已经向所有的这些span添加了CSS3转换属性,当在数字之间切换时出现渐变效果。

样式表里有很多其他CSS,我不再这列举。我相信最好的方式去学习CSS如何工作就是在Firebug、Chrome的审查器或你浏览器里的开发者工具里即时审查demo的代码。

黑色主题

jQuery 代码

要想要时钟工作,我们将使用jQuery生成每个数字的标签,并且设置一个定时器每秒钟更新一次样式,为了更简单,我们使用moment.js 库(快速开始) 来补偿Javascript原生日期和时间方法的缺陷。

assets/js/script.js

$(function(){

// Cache some selectors

var clock = $('#clock'),

alarm = clock.find('.alarm'),

ampm = clock.find('.ampm');

// Map digits to their names (this will be an array)

var digit_to_name = 'zero one two three four five six seven eight nine'.split(' ');

// This object will hold the digit elements

var digits = {};

// Positions for the hours, minutes, and seconds

var positiOns= [

'h1', 'h2', ':', 'm1', 'm2', ':', 's1', 's2'

];

// Generate the digits with the needed markup,

// and add them to the clock

var digit_holder = clock.find('.digits');

$.each(positions, function(){

if(this == ':'){

digit_holder.append('div class="dots"');

}

else{

var pos = $('div');

for(var i=1; i8; i++){

pos.append('span class="d' + i + '"');

}

// Set the digits as key:value pairs in the digits object

digits[this] = pos;

// Add the digit elements to the page

digit_holder.append(pos);

}

});

// Add the weekday names

var weekday_names = 'MON TUE WED THU FRI SAT SUN'.split(' '),

weekday_holder = clock.find('.weekdays');

$.each(weekday_names, function(){

weekday_holder.append('span' + this + '/span');

});

var weekdays = clock.find('.weekdays span');

// Run a timer every second and update the clock

(function update_time(){

// Use moment.js to output the current time as a string

// hh is for the hours in 12-hour format,

// mm - minutes, ss-seconds (all with leading zeroes),

// d is for day of week and A is for AM/PM

var now = moment().format("hhmmssdA");

digits.h1.attr('class', digit_to_name[now[0]]);

digits.h2.attr('class', digit_to_name[now[1]]);

digits.m1.attr('class', digit_to_name[now[2]]);

digits.m2.attr('class', digit_to_name[now[3]]);

digits.s1.attr('class', digit_to_name[now[4]]);

digits.s2.attr('class', digit_to_name[now[5]]);

// The library returns Sunday as the first day of the week.

// Stupid, I know. Lets shift all the days one position down,

// and make Sunday last

var dow = now[6];

dow--;

// Sunday!

if(dow 0){

// Make it last

dow = 6;

}

// Mark the active day of the week

weekdays.removeClass('active').eq(dow).addClass('active');

// Set the am/pm text:

ampm.text(now[7]+now[8]);

// Schedule this function to be run again in 1 sec

setTimeout(update_time, 1000);

})();

// Switch the theme

$('a.button').click(function(){

clock.toggleClass('light dark');

});

});

css3 怎么画时钟的刻度

插入--图片--自选图形

选择各种图形,发挥自己的想像任意调整位置,构成时钟图形

配置线条粗细,线条颜色等

自己的个性时钟随即完美呈现

给你做了一个,喜欢的话加点分哦。呵呵


推荐阅读
  • 如何使用Java获取服务器硬件信息和磁盘负载率
    本文介绍了使用Java编程语言获取服务器硬件信息和磁盘负载率的方法。首先在远程服务器上搭建一个支持服务端语言的HTTP服务,并获取服务器的磁盘信息,并将结果输出。然后在本地使用JS编写一个AJAX脚本,远程请求服务端的程序,得到结果并展示给用户。其中还介绍了如何提取硬盘序列号的方法。 ... [详细]
  • 开发笔记:加密&json&StringIO模块&BytesIO模块
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了加密&json&StringIO模块&BytesIO模块相关的知识,希望对你有一定的参考价值。一、加密加密 ... [详细]
  • 本文介绍了OC学习笔记中的@property和@synthesize,包括属性的定义和合成的使用方法。通过示例代码详细讲解了@property和@synthesize的作用和用法。 ... [详细]
  • 高质量SQL书写的30条建议
    本文提供了30条关于优化SQL的建议,包括避免使用select *,使用具体字段,以及使用limit 1等。这些建议是基于实际开发经验总结出来的,旨在帮助读者优化SQL查询。 ... [详细]
  • 在Xamarin XAML语言中如何在页面级别构建ControlTemplate控件模板
    本文介绍了在Xamarin XAML语言中如何在页面级别构建ControlTemplate控件模板的方法和步骤,包括将ResourceDictionary添加到页面中以及在ResourceDictionary中实现模板的构建。通过本文的阅读,读者可以了解到在Xamarin XAML语言中构建控件模板的具体操作步骤和语法形式。 ... [详细]
  • 移动端常用单位——rem的使用方法和注意事项
    本文介绍了移动端常用的单位rem的使用方法和注意事项,包括px、%、em、vw、vh等其他常用单位的比较。同时还介绍了如何通过JS获取视口宽度并动态调整rem的值,以适应不同设备的屏幕大小。此外,还提到了rem目前在移动端的主流地位。 ... [详细]
  • vue使用
    关键词: ... [详细]
  • YOLOv7基于自己的数据集从零构建模型完整训练、推理计算超详细教程
    本文介绍了关于人工智能、神经网络和深度学习的知识点,并提供了YOLOv7基于自己的数据集从零构建模型完整训练、推理计算的详细教程。文章还提到了郑州最低生活保障的话题。对于从事目标检测任务的人来说,YOLO是一个熟悉的模型。文章还提到了yolov4和yolov6的相关内容,以及选择模型的优化思路。 ... [详细]
  • 本文介绍了lua语言中闭包的特性及其在模式匹配、日期处理、编译和模块化等方面的应用。lua中的闭包是严格遵循词法定界的第一类值,函数可以作为变量自由传递,也可以作为参数传递给其他函数。这些特性使得lua语言具有极大的灵活性,为程序开发带来了便利。 ... [详细]
  • 本文介绍了使用kotlin实现动画效果的方法,包括上下移动、放大缩小、旋转等功能。通过代码示例演示了如何使用ObjectAnimator和AnimatorSet来实现动画效果,并提供了实现抖动效果的代码。同时还介绍了如何使用translationY和translationX来实现上下和左右移动的效果。最后还提供了一个anim_small.xml文件的代码示例,可以用来实现放大缩小的效果。 ... [详细]
  • 目录实现效果:实现环境实现方法一:基本思路主要代码JavaScript代码总结方法二主要代码总结方法三基本思路主要代码JavaScriptHTML总结实 ... [详细]
  • 阿,里,云,物,联网,net,core,客户端,czgl,aliiotclient, ... [详细]
  • XML介绍与使用的概述及标签规则
    本文介绍了XML的基本概念和用途,包括XML的可扩展性和标签的自定义特性。同时还详细解释了XML标签的规则,包括标签的尖括号和合法标识符的组成,标签必须成对出现的原则以及特殊标签的使用方法。通过本文的阅读,读者可以对XML的基本知识有一个全面的了解。 ... [详细]
  • Python爬虫中使用正则表达式的方法和注意事项
    本文介绍了在Python爬虫中使用正则表达式的方法和注意事项。首先解释了爬虫的四个主要步骤,并强调了正则表达式在数据处理中的重要性。然后详细介绍了正则表达式的概念和用法,包括检索、替换和过滤文本的功能。同时提到了re模块是Python内置的用于处理正则表达式的模块,并给出了使用正则表达式时需要注意的特殊字符转义和原始字符串的用法。通过本文的学习,读者可以掌握在Python爬虫中使用正则表达式的技巧和方法。 ... [详细]
  • 延迟注入工具(python)的SQL脚本
    本文介绍了一个延迟注入工具(python)的SQL脚本,包括使用urllib2、time、socket、threading、requests等模块实现延迟注入的方法。该工具可以通过构造特定的URL来进行注入测试,并通过延迟时间来判断注入是否成功。 ... [详细]
author-avatar
violet
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有