插入--圖片--自選圖形
十年的湟源網(wǎng)站建設(shè)經(jīng)驗(yàn),針對(duì)設(shè)計(jì)、前端、開發(fā)、售后、文案、推廣等六對(duì)一服務(wù),響應(yīng)快,48小時(shí)及時(shí)工作處理。全網(wǎng)整合營銷推廣的優(yōu)勢(shì)是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動(dòng)調(diào)整湟源建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計(jì),從而大程度地提升瀏覽體驗(yàn)。創(chuàng)新互聯(lián)建站從事“湟源網(wǎng)站設(shè)計(jì)”,“湟源網(wǎng)站推廣”以來,每個(gè)客戶項(xiàng)目都認(rèn)真落實(shí)執(zhí)行。
選擇各種圖形,發(fā)揮自己的想像任意調(diào)整位置,構(gòu)成時(shí)鐘圖形
配置線條粗細(xì),線條顏色等
自己的個(gè)性時(shí)鐘隨即完美呈現(xiàn)
給你做了一個(gè),喜歡的話加點(diǎn)分哦。呵呵
代碼如下:
!DOCTYPE html
html lang="en" xmlns=""
head
meta charset="utf-8" /
titlecanvas實(shí)例--制作時(shí)鐘/title
/head
body
canvas id="canvas" width="500" height="500"
您的瀏覽器版本太低啦!可以換了!
/canvas
script
//獲取canvas
var canvas = document.getElementById("canvas");
//設(shè)置環(huán)境
var cxt = canvas.getContext("2d");
//制作時(shí)鐘的函數(shù)
function DrawClock() {
//清除畫布
cxt.clearRect(0,0,500,500);
//獲取當(dāng)前時(shí)間的時(shí),分,秒
var now = new Date();
var hour = now.getHours();
var min = now.getMinutes();
var sec = now.getSeconds();
//小時(shí)必須獲取浮點(diǎn)型(小時(shí)+分?jǐn)?shù)---轉(zhuǎn)化為的小時(shí))
hour = hour + min / 60;
//將24小時(shí)轉(zhuǎn)換為12小時(shí)
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();
//刻度
//時(shí)針
for (var i = 0; i 12; i++) {
cxt.save();
cxt.lineWidth = 7;
cxt.strokeStyle = "red";
//設(shè)置0,0點(diǎn)
cxt.translate(250, 250);
//再設(shè)置旋轉(zhuǎn)角度
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++) {
//為避免不同顏色的重疊,
//在時(shí)針刻度與分針刻度重疊的位置,不畫分針
if (i % 5 == 0) continue;
cxt.save();
//設(shè)置刻度粗細(xì)
cxt.lineWidth = 5;
cxt.strokeStyle = "purple";
//設(shè)置畫布的0,0點(diǎn)
cxt.translate(250, 250);
//設(shè)置旋轉(zhuǎn)角度
cxt.rotate(i * 6 * Math.PI / 180);
//畫分針刻度
cxt.beginPath();
cxt.moveTo(0, -180);
cxt.lineTo(0, -190);
cxt.closePath();
cxt.stroke();
cxt.restore();
}
//時(shí)針
cxt.save();
//設(shè)置時(shí)針風(fēng)格
cxt.lineWidth = 7;
cxt.strokeStyle = "pink";
//設(shè)置異次元空間的0,0點(diǎn)
cxt.translate(250, 250);
//設(shè)置旋轉(zhuǎn)角度
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();
//設(shè)置分針風(fēng)格
cxt.lineWidth = 5;
cxt.strokeStyle = "orange";
//設(shè)置異次元空間的0,0點(diǎn)
cxt.translate(250, 250);
//設(shè)置旋轉(zhuǎn)角度
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();
//風(fēng)格
cxt.strokeStyle = "yellow";
cxt.lineWidth = 3;
//重置0,0點(diǎn)
cxt.translate(250, 250);
//設(shè)置旋轉(zhuǎn)角度
cxt.rotate(sec*6*Math.PI/180);
//畫圖
cxt.beginPath();
cxt.moveTo(0, -170);
cxt.lineTo(0, 20);
cxt.stroke();
//畫出時(shí)針,分針,秒針的交叉點(diǎn)
cxt.beginPath();
cxt.arc(0, 0, 5, 0, 360, false);
cxt.closePath();
//設(shè)置填充樣式
cxt.fillStyle = "blue";
cxt.fill();
//設(shè)置筆觸樣式---秒針已設(shè)置
cxt.stroke();
//設(shè)置秒針前端的小圓點(diǎn)
cxt.beginPath();
cxt.arc(0, -150, 5, 0, 360, false);
cxt.closePath();
//設(shè)置填充樣式
cxt.fillStyle = "blue";
cxt.fill();
//設(shè)置筆觸樣式
cxt.stroke();
cxt.closePath();
cxt.restore();
}
//調(diào)用函數(shù)
DrawClock();
//設(shè)置時(shí)鐘轉(zhuǎn)動(dòng)起來
setInterval(DrawClock, 1000);
/script
/body
/html
這個(gè)時(shí)鐘不需要很多HTML,這是因?yàn)樗艽蟮囊徊糠?,像工作日的名稱和數(shù)字都是動(dòng)態(tài)生成的。 下面是你需要在你頁面上使用時(shí)鐘時(shí)要有的標(biāo)簽:
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標(biāo)記、鬧鈴和時(shí)間。 下面代碼為每個(gè)數(shù)字生成一個(gè)標(biāo)簽:
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個(gè)像這樣帶span的div,每個(gè)div為時(shí)鐘的一個(gè)數(shù)字。就像你在上面片段中所見到的一樣,這些div擁有一個(gè)從0到9的樣式名稱,并且包含7個(gè)帶獨(dú)立樣式的span元素,這些span是數(shù)字的一部分,像老的數(shù)字時(shí)鐘一樣:
數(shù)字說明
它們完全用CSS樣式渲染且默認(rèn)設(shè)置為 opacity:0 。定義在它們父div上的樣式將決定它們的可見性。下面是數(shù)字“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;
}
除了中間一個(gè),所有的片斷都是可見的,我已經(jīng)向所有的這些span添加了CSS3轉(zhuǎn)換屬性,當(dāng)在數(shù)字之間切換時(shí)出現(xiàn)漸變效果。
樣式表里有很多其他CSS,我不再這列舉。我相信最好的方式去學(xué)習(xí)CSS如何工作就是在Firebug、Chrome的審查器或你瀏覽器里的開發(fā)者工具里即時(shí)審查demo的代碼。
黑色主題
jQuery 代碼
要想要時(shí)鐘工作,我們將使用jQuery生成每個(gè)數(shù)字的標(biāo)簽,并且設(shè)置一個(gè)定時(shí)器每秒鐘更新一次樣式,為了更簡(jiǎn)單,我們使用moment.js 庫(快速開始) 來補(bǔ)償JavaScript原生日期和時(shí)間方法的缺陷。
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');
});
});
文章名稱:css時(shí)鐘樣式,時(shí)鐘的樣式
本文網(wǎng)址:http://jinyejixie.com/article10/dsdgido.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供手機(jī)網(wǎng)站建設(shè)、響應(yīng)式網(wǎng)站、App開發(fā)、靜態(tài)網(wǎng)站、Google、云服務(wù)器
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)