css 时钟

(转自:http://www.cnblogs.com/Wenwang/archive/2011/09/21/2184102.html

<!DOCTYPE html>

<html lang="en">
<head>
<meta charset="utf-8">
<style type="text/css">
#clock{
width: 200px;
height: 200px;
border: 1px solid black;
border-radius: 100px;
position:relative;
margin:0 auto;
background-color:#eee;
}
#dot{
border-radius:2px;
width: 8px;
height: 8px;
position:absolute;
top: 0;
bottom: 0;
margin: auto;
left: 0;
right: 0;
background: black;
}
.needle
{
-ms-transform-origin: 50% 100%;
-webkit-transform-origin: 50% 100%;
-moz-transform-origin: 50% 100%;
-o-transform-origin: 50% 100%;
transform-origin:50% 100%;
}
#second{
position:relative;
z-index:5;
height: 80px;
width: 1px;
margin: 20px auto;
}
#second_needle{
height: 100%;
width: 100%;
position: relative;
background: green;
}
#minute{
z-index:4;
height: 60px;
width: 4px;
position: absolute;
top: 40px;
left: 0px;
right: 0px;
margin: auto;
}
#minute_needle{
height: 100%;
width: 100%;
background: blue;
}
#hour{
z-index:3;
height: 40px;
width: 8px;
position: absolute;
top: 60px;
left: 0px;
right: 0px;
margin: auto;
}
#hour_needle{
height: 100%;
width: 100%;
background: red;
}
</style>
</head>
<body>
<div id="clock">
<div id="dot"></div>
<div id="second" class="needle">
<div id="second_needle">
</div>
</div>
<div id="minute" class="needle">
<div id="minute_needle">
</div>
</div>
<div id="hour" class="needle">
<div id="hour_needle">
</div>
</div>
</div>
<script type="text/javascript">
//初始化各指钟的位置
window.onload = function(){
var date = new Date(),
second = date.getSeconds(),
minute = date.getMinutes(),
minuteDeg,
hour = date.getHours(),
hourDeg;
var secondrotate = ‘rotate(‘+second*6+‘deg)‘;
var scss = ‘-moz-transform:‘ + secondrotate + ‘;-o-transform:‘ + secondrotate + ‘;-ms-transform:‘ + secondrotate;
//对?于úwebkit的?浏ˉ览à器÷,要a这a样ù定¨义?
document.getElementById(‘second‘).style.cssText = scss;
document.getElementById(‘second‘).style.webkitTransform = secondrotate;

minuteDeg = minute*6 + second*6/60;
var minuterotate = ‘rotate(‘+minuteDeg+‘deg)‘;
var minutecss = ‘-moz-transform:‘ + minuterotate + ‘;-o-transform:‘ + minuterotate + ‘;-ms-transform:‘ + minuterotate ;
document.getElementById(‘minute‘).style.cssText = minutecss;
document.getElementById(‘minute‘).style.webkitTransform = minuterotate; //对?于úwebkit的?浏ˉ览à器÷,要a这a样ù定¨义?
if(hour>12){
hour = hour -12;
}
hourDeg = hour * 30 + minute*30/60;
var hourtrotate = ‘rotate(‘+hourDeg+‘deg)‘;
var hcss = ‘-moz-transform:‘ + hourtrotate + ‘;-o-transform:‘ + hourtrotate + ‘;-ms-transform:‘ + hourtrotate;
document.getElementById(‘hour‘).style.cssText = hcss;
document.getElementById(‘hour‘).style.webkitTransform = hourtrotate; //对?于úwebkit的?浏ˉ览à器÷,要a这a样ù定¨义?

};

//周ü期ú性?改?变?秒?钟ó的?位?置?
setInterval(function(){
var date = new Date(),
second = date.getSeconds();

var secondrotate = ‘rotate(‘+second*6+‘deg)‘;
var scss = ‘-moz-transform:‘ + secondrotate + ‘;-o-transform:‘ + secondrotate + ‘;-ms-transform:‘ + secondrotate ;
document.getElementById(‘second‘).style.cssText = scss;
document.getElementById(‘second‘).style.webkitTransform = secondrotate; //对?于úwebkit的?浏ˉ览à器÷,要a这a样ù定¨义?

},1000)

//周ü期ú性?改?变?分?钟ó的?位?置?
setInterval(function(){
var date = new Date(),
second = date.getSeconds(),
minute = date.getMinutes(),
minuteDeg;
minuteDeg = minute*6 + second*6/60;
var minuterotate = ‘rotate(‘+minuteDeg+‘deg)‘;
var minutecss = ‘-moz-transform:‘ + minuterotate + ‘;-o-transform:‘ + minuterotate + ‘;-ms-transform:‘ + minuterotate ;
document.getElementById(‘minute‘).style.cssText = minutecss;
document.getElementById(‘minute‘).style.webkitTransform = minuterotate; //对?于úwebkit的?浏ˉ览à器÷,要a这a样ù定¨义?

},6000)

//周ü期ú性?改?变?时±钟ó的?位?置?
setInterval(function(){
var date = new Date(),
second = date.getSeconds(),
minute = date.getMinutes(),
hour = date.getHours(),
hourDeg;

if(hour>12){
hour = hour -12;
}
hourDeg = hour * 30 + minute*30/60;
var hourtrotate = ‘rotate(‘+hourDeg+‘deg)‘;
var hcss = ‘-moz-transform:‘ + hourtrotate + ‘;-o-transform:‘ + hourtrotate + ‘;-ms-transform:‘ + hourtrotate;
document.getElementById(‘hour‘).style.cssText = hcss;
document.getElementById(‘hour‘).style.webkitTransform = hourtrotate; //对?于úwebkit的?浏ˉ览à器÷,要a这a样ù定¨义?

},360000)
</script>
</body>
</html>

时间: 2024-11-14 12:34:11

css 时钟的相关文章

自学前端开发 新版css时钟效果图

想要自学前端开发,你要的学习资料到了-web前端交流学习群21,新版css时钟效果图 <!DOCTYPE html> <html> <head> <metahttp-equiv="Content-Type" content="text/html;charset=UTF-8"> <title>RunJS</title> <style> .clock{ width:200px; heig

css3制作时钟

制作时钟之前需要了解几点知识: 一.圆上点坐标的计算 二.时钟上时针.分针.秒针的换算 我们观察一下时钟,首先想到的是与角度有关.再有是,秒针,分针,时针之间的进位关系. 比如说h时m分s秒,时针.分针.秒针此时此刻的角度:(-90,是因为rotateZ角度旋转规则,默认是从水平开始,逆时针为+,顺时针为-) ds  =  s*6-90; dm =  m*6+(s/60*6)-90; dh  =  h*30+(m/60*30)-90; 我们都知道1s = 1 / 60min,1min = 1 /

JavaScript - 收藏集 - 掘金

Angular 中的响应式编程 -- 浅淡 Rx 的流式思维 - 掘金第一节:初识Angular-CLI第二节:登录组件的构建第三节:建立一个待办事项应用第四节:进化!模块化你的应用第五节:多用户版本的待办事项应用第六节:使用第三方样式库及模块优化用第七节:给组件带来活力Rx--隐藏在 Angular 中的利剑Redux你的 A... Electron 深度实践总结 - 前端 - 掘金思维导图 前言: Electron 从最初发布到现在已经维护很长一段时间了,但是去年才开始慢慢升温.笔者个人恰好

径向动画

IMOOC 数学在css中的应用 一.径向动画菜单 代码: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>径向动画菜单</title> <style type="text/css"> * { margin: 0; padding: 0; } body { backgrou

html css js 时钟 计时器

时钟 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>菜鸟教程(runoob.com)</title>    <script>      var _hmt = _hmt || [];      (function() {       var hm = document.createElement("script"

使用 CSS &amp; jQuery 制作一款漂亮的多彩时钟

大家可能见过各种各样的时钟效果,比如多年前非常流行的 Flash 制作的各种新奇的动画时钟,现在的 Web 开发者们又开始应用 CSS3 和 Canvas 等最新技术来实现.而今天这里要分享的这款漂亮的多彩时钟效果大家不一定见过,赶紧来看看. 您可能感兴趣的相关文章 Web 开发中很实用的10个效果[附源码下载] 精心挑选的优秀jQuery Ajax分页插件和教程 12款经典的白富美型 jQuery 图片轮播插件 让网站动起来!12款优秀的 jQuery 动画插件 精心挑选的美轮美奂的 jQue

用JavaScript和CSS实现“在页面中水平和垂直居中”的时钟

思路:实现起来最麻烦的其实是水平居中和垂直居中,其中垂直居中是最麻烦的.考虑到浏览器兼容性,网上看了一些资料,发现在页面中垂直居中确实没有什么太好的办法.于是就采用了position:fixed属性控制时钟的绝对位置,通过clientWidth和clientHeight来获取时钟的宽和高,利用javascript控制marginLeft和marginTop来居中时钟. 代码如下: <!doctype html> <html lang="en"> <head

用html+css+javascript制作圆形时钟

制作好的效果如下: 表盘.刻度和数字全都是用html+css完成的. html+css代码如下: <!DOCTYPE html> <html> <head> <title>圆形时钟</title> <style type="text/css"> #div1{ width: 500px; height: 500px; border:1px solid black; border-radius: 50%; margin

Java学习总计(二十六)——JavaScript正则表达式,Js表单验证,原生js+css页面时钟

一.JavaScript正则表达式1.exec检索字符串中指定的值,返回找到的值,并确定其位置2.test检索字符串中指定的值,返回true或false3.正则表达式对象的创建:(1)方式一:Var rgex=new RegExp("[0-9]","模式");(2)方式二:简便写法,用双斜杠//把正则表达式的内容括起来例1(正则创建,使用test()方法): <!DOCTYPE html> <html> <head> <me