CSS3圓盤時鐘是一種常見的網頁設計元素,它常用于展示時間和日期,具有美觀、簡潔、易于使用等優點。
要創建CSS3圓盤時鐘,我們需要使用CSS的transform和animation屬性。具體實現過程如下:
.clock { width: 200px; height: 200px; border-radius: 50%; border: 10px solid #000; position: relative; margin: 50px auto; transform: rotateZ(-90deg); } .hour, .minute, .second { position: absolute; width: 6px; height: 6px; background-color: #000; border-radius: 50% 50% 0 0; transform-origin: bottom center; } .hour { width: 4px; height: 30px; margin-left: -2px; } .minute { height: 40px; margin-left: -3px; } .second { height: 50px; margin-left: -3px; } @keyframes rotate { from { transform: rotateZ(-90deg); } to { transform: rotateZ(270deg); } } .clock .hour { animation: rotate 7200s linear infinite; } .clock .minute { animation: rotate 360s linear infinite; } .clock .second { animation: rotate 60s linear infinite; }
以上代碼實現了一個200px大小的圓形時鐘,時針、分針和秒針分別由.hour、.minute和.second元素表示。通過設置animation屬性,讓這三個元素分別以不同的速度和方向繞圓形時鐘旋轉。
另外,為了使時鐘顯示更加準確,我們可以使用JavaScript代碼來獲取當前時間,并添加到時針、分針和秒針的旋轉角度中:
var hour = document.querySelector('.hour'); var minute = document.querySelector('.minute'); var second = document.querySelector('.second'); function rotate() { var date = new Date(); var h = date.getHours() % 12; var m = date.getMinutes(); var s = date.getSeconds(); var hour_deg = h * 30 + m / 2; var minute_deg = m * 6; var second_deg = s * 6; hour.style.transform = 'rotateZ(' + hour_deg + 'deg)'; minute.style.transform = 'rotateZ(' + minute_deg + 'deg)'; second.style.transform = 'rotateZ(' + second_deg + 'deg)'; } setInterval(rotate, 1000);
以上JavaScript代碼在每秒鐘調用一次rotate函數,獲取當前時間,并將其轉換為時針、分針和秒針的旋轉角度。
CSS3圓盤時鐘是一種非常實用的網頁設計元素,它不僅美觀大方,而且易于使用和維護。通過以上代碼,我們可以輕松地創建一個精美的圓盤時鐘。
上一篇php cms 開源系統
下一篇php cms 多語言