时钟中的时钟动画时钟效果
代码语言:html
所属分类:动画
下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<style>
* {
box-sizing: border-box;
}
body {
min-height: 100vh;
display: grid;
-webkit-box-align: center;
align-items: center;
background-color: #fff;
}
.wrapper {
display: -webkit-box;
display: flex;
width: 100%;
padding: 10px;
}
.clocks {
width: 100%;
max-width: 1400px;
margin: 0 auto;
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-template-rows: 1fr;
grid-column-gap: 5%;
grid-row-gap: 0;
}
.number {
display: grid;
grid-template-columns: repeat(2, 1fr);
grid-template-rows: 1fr;
grid-column-gap: 0;
grid-row-gap: 0;
}
.digit {
display: grid;
grid-template-columns: repeat(4, 1fr);
grid-template-rows: repeat(6, 1fr);
grid-column-gap: 0;
grid-row-gap: 0;
}
.pixel {
padding-top: calc(100% - 2px);
position: relative;
border: 1px solid transparent;
}
.clock {
position: absolute;
top: 0;
bottom: 0;
left: 0;
right: 0;
background-color: #fff;
border: 2px solid #fff;
border-radius: 50%;
box-shadow: rgba(0, 0, 0, 0.3) 0 2px 2px, inset rgba(0, 0, 0, 0.1) 0 2px 2px;
}
.clock:before {
content: "";
width: 3px;
height: 3px;
border-radius: 50%;
background-color: #555;
position: absolute;
left: 50%;
top: 50%;
-webkit-transform: translate(-50%, -50%);
transform: translate(-50%, -50%);
z-index: 3;
}
.hand {
width: 2px;
background-color: #555;
border-radius: 15px;
position: absolute;
top: 50%;
left: 50%;
-webkit-transition: -webkit-transform 500ms ease-in-out;
transition: -webkit-transform 500ms ease-in-out;
transition: transform 500ms ease-in-out;
transition: transform 500ms ease-in-out, -webkit-transform 500ms ease-in-out;
}
.hand_hour {
height: 30%;
-webkit-transform: translate(-50%, -50%) rotate(60deg) translateY(-50%);
transform: translate(-50%, -50%) rotate(60deg) translateY(-50%);
}
.hand_minute {
height: 40%;
-webkit-transform: translate(-50%, -50%) rotate(-60deg) translateY(-50%);
transform: translate(-50%, -50%) rotate(-60deg) translateY(-50%);
z-index: 1;
}
.digit_0 .pixel:nth-child(1) .hand_hour,
.digit_0 .pixel:nth-child(6) .hand_hour {
-webkit-transform: translate(-50%, -50%) rotate(90deg) translateY(-50%);
transform: translate(-50%, -50%) rotate(90deg) translateY(-50%);
}
.digit_0 .pixel:nth-child(1) .hand_minute,
.digit_0 .pixel:nth-child(6) .hand_minute {
-webkit-transform: translate(-50%, -50%) rotate(180deg) translateY(-50%);
transform: translate(-50%, -50%) rotate(180deg) translateY(-50%);
}
.digit_0 .pixel:nth-child(2) .hand_hour,
.digit_0 .pixel:nth-child(3) .hand_hour,
.digit_0 .pixel:nth-child(22) .hand_hour,
.digit_0 .pixel:nth-child(23) .hand_hour {
-webkit-transform: translate(-50%, -50%) rotate(90deg) translateY(-50%);
transform: translate(-50%, -50%) rotate(90deg) translateY(-50%);
}
.digit_0 .pixel:nth-child(2) .hand_minute,
.digit_0 .pixel:nth-child(3) .hand_minute,
.digit_0 .pixel:nth-child(22) .hand_minute,
.digit_0 .pixel:nth-child(23) .hand_minute {
-webkit-transform: translate(-50%, -50%) rotate(-90deg) translateY(-50%);
transform: translate(-50%, -50%) rotate(-90deg) translateY(-50%);
}
.digit_0 .pixel:nth-child(4) .hand_hour,
.digit_0 .pixel:nth-child(7) .hand_hour {
-webkit-transform: translate(-50%, -50%) rotate(180deg) translateY(-50%);
transform: translate(-50%, -50%) rotate(180deg) translateY(-50%);
}
.digit_0 .pixel:nth-child(4) .hand_minute,
.digit_0 .pixel:nth-child(7) .hand_minute {
-webkit-transform: translate(-50%, -50%) rotate(-90deg) translateY(-50%);
transform: translate(-50%, -50%) rotate(-90deg) translateY(-50%);
}
.digit_0 .pixel:nth-child(5) .hand_hour,
.digit_0 .pixel:nth-child(8) .hand_hour,
.digit_0 .pixel:nth-child(9) .hand_hour,
.digit_0 .pixel:nth-child(10) .hand_hour,
.digit_0 .pixel:nth-child(11) .hand_hour,
.digit_0 .pixel:nth-child(12) .hand_hour,
.digit_0 .pixel:nth-child(13) .hand_hour,
.digit_0 .pixel:nth-child(14) .hand_hour,
.digit_0 .pixel:nth-child(15) .hand_hour,
.digit_0 .pixel:nth-child(16) .hand_hour,
.digit_0 .pixel:nth-child(17) .hand_hour,
.digit_0 .pixel:nth-child(20) .hand_hour {
-webkit-transform: translate(-50%, -50%) rotate(0deg) translateY(-50%);
transform: translate(-50%, -50%) rotate(0deg) translateY(-50%);
}
.digit_0 .pixel:nth-child(5) .hand_minute,
.digit_0 .pixel:nth-child(8) .hand_minute,
.digit_0 .pixel:nth-child(9) .hand_minute,
.digit_0 .pixel:nth-child(10) .hand_minute,
.digit_0 .pixel:nth-child(11) .hand_minute,
.digit_0 .pixel:nth-child(12) .hand_minute,
.digit_0 .pixel:nth-child(13) .hand_minute,
.digit_0 .pixel:nth-child(14) .hand_minute,
.digit_0 .pixel:nth-child(15) .hand_minute,
.digit_0 .pixel:nth-child(16) .hand_minute,
.digit_0 .pixel:nth-child(17) .hand_minute,
.digit_0 .pixel:nth-child(20) .hand_minute {
-webkit-transform: translate(-50%, -50%) rotate(180deg) translateY(-50%);
transform: translate(-50%, -50%) rotate(180deg) translateY(-50%);
}
.digit_0 .pixel:nth-child(18) .hand_hour,
.digit_0 .pixel:nth-child(21) .hand_hour {
-webkit-transform: translate(-50%, -50%) rotate(0deg) translateY(-50%);
transform: translate(-50%, -50%) rotate(0deg) translateY(-50%);
}
.digit_0 .pixel:nth-child(18) .hand_minute,
.digit_0 .pixel:nth-child(21) .hand_minute {
-webkit-transform: translate(-50%, -50%) rotate(90deg) translateY(-50%);
transform: translate(-50%, -50%) rotate(90deg) translateY(-50%);
}
.digit_0 .pixel:nth-child(19) .hand_hour,
.digit_0 .pixel:nth-child(24) .hand_hour {
-webkit-transform: translate(-50%, -50%) rotate(-90deg) translateY(-50%);
transform: translate(-50%, -50%) rotate(-90deg) translateY(-50%);
}
.digit_0 .pixel:nth-child(19) .hand_minute,
.digit_0 .pixel:nth-child(24) .hand_minute {
-webkit-transform: translate(-50%, -50%) rotate(0deg) translateY(-50%);
transform: translate(-50%, -50%) rotate(0deg) translateY(-50%);
}
.digit_1 .pixel:nth-child(1) .hand_hour,
.digit_1 .pixel:nth-child(17) .hand_hour {
-webkit-transform: translate(-50%, -50%) rotate(90deg) translateY(-50%);
transform: translate(-50%, -50%) rotate(90deg) translateY(-50%);
}
.digit_1 .pixel:nth-child(1) .hand_minute,
.digit_1 .pixel:nth-child(17) .hand_minute {
-webkit-transform: translate(-50%, -50%) rotate(180deg) translateY(-50%);
transform: translate(-50%, -50%) rotate(180deg) translateY(-50%);
}
.digit_1 .pixel:nth-child(2) .hand_hour,
.digit_1 .pixel:nth-child(22) .hand_hour,
.digit_1 .pixel:nth-child(23) .hand_hour {
-webkit-transform: translate(-50%, -50%) rotate(90deg) translateY(-50%);
transform: translate(-50%, -50%) rotate(90deg) translateY(-50%);
}
.digit_1 .pixel:nth-child(2) .hand_minute,
.digit_1 .pixel:nth-child(22) .hand_minute,
.digit_1 .pixel:nth-child(23) .hand_minute {
-webkit-transform: translate(-50%, -50%) rotate(-90deg) translateY(-50%);
transform: translate(-50%, -50%) rotate(-90deg) translateY(-50%);
}
.digit_1 .pixel:nth-child(3) .hand_hour,
.digit_1 .pixel:nth-child(6) .hand_hour,
.digit_1 .pixel:nth-child(20) .hand_hour {
-webkit-transform: translate(-50%, -50%) rotate(-90deg) translateY(-50%);
transform: translate(-50%, -50%) rotate(-90deg) translateY(-50%);
}
.digit_1 .pixel:nth-child(3) .hand_minute,
.digit_1 .pixel:nth-child(6) .hand_minute,
.digit_1 .pixel:nth-child(20) .hand_minute {
-webkit-transform: translate(-50%, -50%) rotate(180deg) translateY(-50%);
transform: translate(-50%, -50%) rotate(180deg) translateY(-50%);
}
.digit_1 .pixel:nth-child(4) .hand_hour,
.digit_1 .pixel:nth-child(8) .hand_hour,
.digit_1 .pixel:nth-child(9) .hand_hour,
.digit_1 .pixel:nth-child(12) .hand_hour,
.digit_1 .pixel:nth-child(13) .hand_hour,
.digit_1 .pixel:nth-child(16) .hand_hour {
-webkit-transform: translate(-50%, -50%) rotate(-135deg) translateY(-50%);
transform: translate(-50%, -50%) rotate(-135deg) translateY(-50%);
}
.digit_1 .pixel:nth-child(4) .hand_minute,
.digit_1 .pixel:nth-child(8) .hand_minute,
.digit_1 .pixel:nth-child(9) .hand_minute,
.digit_1 .pixel:nth-child(12) .hand_minute,
.digit_1 .pixel:nth-child(13) .hand_minute,
.digit_1 .pixel:nth-child(16) .hand_minute {
-webkit-transform: translate(-50%, -50%) rotate(-135deg) translateY(-50%);
transform: translate(-50%, -50%) rotate(-135deg) translateY(-50%);
}
.digit_1 .pixel:nth-child(5) .hand_hour,
.digit_1 .pixel:nth-child(19) .hand_hour,
.digit_1 .pixel:nth-child(21) .hand_hour {
-webkit-transform: translate(-50%, -50%) rotate(0deg) translateY(-50%);
transform: translate(-50%, -50%) rotate(0deg) translateY(-50%);
}
.digit_1 .pixel:nth-child(5) .hand_minute,
.digit_1 .pixel:nth-child(19) .hand_minute,
.digit_1 .pixel:nth-child(21) .hand_minute {
-webkit-transform: translate(-50%, -50%) rotate(90deg) translateY(-50%);
transform: translate(-50%, -50%) rotate(90deg) translateY(-50%);
}
.digit_1 .pixel:nth-child(7) .hand_hour,
.digit_1 .pixel:nth-child(10) .hand_hour,
.digit_1 .pixel:nth-child(11) .hand_hour,
.digit_1 .pixel:nth-child(14) .hand_hour,
.digit_1 .pixel:nth-child(15) .hand_hour {
-webkit-transform: translate(-50%, -50%) rotate(0deg) translateY(-50%);
transform: translate(-50%, -50%) rotate(0deg) translateY(-50%);
}
.digit_1 .pixel:nth-child(7) .hand_minute,
.digit_1 .pixel:nth-child(10) .hand_minute,
.digit_1 .pixel:nth-child(11) .hand_minute,
.digit_1 .pixel:nth-child(14) .hand_minute,
.digit_1 .pixel:nth-child(15) .hand_minute {
-webkit-transform: translate(-50%, -50%) rotate(180deg) translateY(-50%);
transform: translate(-50%, -50%) rotate(180deg) translateY(-50%);
}
.digit_1 .pixel:nth-child(18) .hand_hour,
.digit_1 .pixel:nth-child(24) .hand_hour {
-webkit-transform: translate(-50%, -50%) rotate(0deg) translateY(-50%);
transform: translate(-50%, -50%) rotate(0deg) translateY(-50%);
}
.digit_1 .pixel:nth-child(18) .hand_minute,
.digit_1 .pixel:nth-child(24) .hand_minute {
-webkit-transform: translate(-50%, -50%) rotate(-90deg) translateY(-50%);
transform: translate(-50%, -50%) rotate(-90deg) translateY(-50%);
}
.digit_2 .pixel:nth-child(1) .hand_hour,
.digit_2 .pixel:nth-child(9) .hand_hour,
.digit_2 .pixel:nth-child(14) .hand_hour {
-webkit-transform: translate(-50%, -50%) rotate(90deg) translateY(-50%);
transform: translate(-50%, -50%) rotate(90deg) translateY(-50%);
}
.digit_2 .pixel:nth-child(1) .hand_minute,
.digit_2 .pixel:nth-child(9) .hand_minute,
.digit_2 .pixel:nth-child(14) .hand_minute {
-webkit-transform: translate(-50%, -50%) rotate(180deg) translateY(-50%);
transform: translate(-50%, -50%) rotate(180deg) translateY(-50%);
}
.digit_2 .pixel:nth-child(2) .hand_hour,
.digit_2 .pixel:nth-child(3) .hand_hour,
.digit_2 .pixel:nth-child(6) .hand_hour,
.digit_2 .pixel:nth-child(10) .hand_hour,
.digit_2 .pixel:nth-child(15) .hand_hour,
.digit_2 .pixel:nth-child(19) .hand_hour,
.digit_2 .pixel:nth-child(22) .hand_hour,
.digit_2 .pixel:nth-child(23) .hand_hour {
-webkit-transform: translate(-50%, -50%) rotate(90deg) translateY(-50%);
transform: translate(-50%, -50%) rotate(90deg) translateY(-50%);
}
.digit_2 .pixel:nth-child(2) .hand_minute,
.digit_2 .pixel:nth-child(3) .hand_minute,
.digit_2 .pixel:nth-child(6) .hand_minute,
.digit_2 .pixel:nth-child(10) .hand_minute,
.digit_2 .pixel:nth-child(15) .hand_minute,
.digit_2 .pixel:nth-child(19) .hand_minute,
.digit_2 .pixel:nth-child(22) .hand_minute,
.digit_2 .pixel:nth-child(23) .hand_minute {
-webkit-transform: translate(-50%, -50%) rotate(-90deg) translateY(-50%);
transform: translate(-50%, -50%) rotate(-90deg) translateY(-50%);
}
.digit_2 .pixel:nth-child(4) .hand_hour,
.digit_2 .pixel:nth-child(7) .hand_hour,
.digit_2 .pixel:nth-child(20) .hand_hour {
-webkit-transform: translate(-50%, -50%) rotate(-90deg) translateY(-50%);
transform: translate(-50%, -50%) rotate(-90deg) translateY(-50%);
}
.digit_2 .pixel:nth-child(4) .hand_minute,
.digit_2 .pixel:nth-child(7) .hand_minute,
.digit_2 .pixel:nth-child(20) .hand_minute {
-webkit-transform: translate(-50%, -50%) rotate(-180deg) translateY(-50%);
transform: translate(-50%, -50%) rotate(-180deg) translateY(-50%);
}
.digit_2 .pixel:nth-child(5) .hand_hour,
.digit_2 .pixel:nth-child(18) .hand_hour,
.digit_2 .pixel:nth-child(21) .hand_hour {
-webkit-.........完整代码请登录后点击上方下载按钮下载查看
















网友评论0