css+js实现木质条纹挂壁式时钟时针走动效果代码
代码语言:html
所属分类:其他
代码描述:css+js实现木质条纹挂壁式时钟时针走动效果代码
下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <link href="https://fonts.googleapis.com/css2?family=Lato:wght@400&display=swap&text=1234567890abcdehmnorsuw" rel="stylesheet"> <style> :root { --hour: 0deg; --minute: 0deg; --second: 0deg; } html, body { height: 100%; } body { background-color: #303f9f; display: grid; font-family: "Lato", sans-serif; margin: 0; place-items: center; } .clock { background-color: #b7b19e; background-image: linear-gradient(#815f28, #815f28), url(//repo.bfw.wiki/bfwrepo/image/6219d44222d38.png); background-size: cover; background-blend-mode: saturation; display: grid; height: 90vmin; place-items: center; } .clock, .clock__inner { aspect-ratio: 1/1; border-radius: 100%; } .clock__center { aspect-ratio: 1/1; background: #6d4c41 url(//repo.bfw.wiki/bfwrepo/image/6219d450874d6.png); background-blend-mode: overlay; background-size: cover; border-radius: 100%; bottom: 0; box-shadow: 0 0 0 0.67vmin #000; left: 0; margin: auto; position: absolute; right: 0; top: 0; width: 25%; z-index: 20; } .clock__divider { background-color: #000; height: 100%; left: 0; margin: auto; position: absolute; right: 0; width: 0.67vmin; z-index: 10; } .clock__divider:nth-child(1) { transform: rotate(calc((90deg / 3 * 0) + 45deg)); } .clock__divider:nth-child(2) { transform: rotate(calc((90deg / 3 * 1) + 45deg)); } .clock__divider:nth-child(3) { transform: rotate(calc((90deg / 3 * 2) + 45deg)); } .clock__divider:nth-child(4) { transform: rotate(calc((90deg / 3 * 3) + 45deg)); } .clock__divider:nth-child(5) { transform: rotate(calc((90deg / 3 * 4) + 45deg)); } .clock__divider:nth-child(6) { transform: rotate(calc((90deg / 3 * 5) + 45deg)); } .clock__gear { aspect-ratio: 1/1; background-color: #b7b19e; background-image: radial-gradient(#190f0f 48%, transparent 50%), linear-gradient(to right, transparent, #0003 50%, transparent 50%), url(//repo.bfw.wiki/bfwrepo/image/6219d44222d38.png); border-radius: 100%; bottom: 0; left: 0; margin: auto; position: absolute; right: 0; top: 0; transform: rotate(var(--minute)); width: 3.75vmin; z-index: 50; } .clock__hour, .clock__minute, .clock__second { background: linear-gradient(to right, transparent, #0003 50%, transparent 50%), url(//repo.bfw.wiki/bfwrepo/image/6219d44222d38.png); background-color: #c9c4b6; left: 0; margin: auto; position: absolute; right: 0; transform-origin: bottom center; width: 3vmin; } .clock__hour::before, .clock__minute::before, .clock__second::before { background: linear-gradient(to right, transparent, #0003 50%, transparent 50%), url(//repo.bfw.wiki/bfwrepo/image/6219d44222d38.png); background-color: #c9c4b6; bottom: -10%; content: ""; position: absolute; height: 10%; width: 100%; } .clock__hour { clip-path: polygon(10% 40%, 50% calc(40% - 2vmin), 90% 40%, 100% calc(110% - 2vmin), 50% 110%, 0 calc(110% - 2vmin), 0 110%); height: 50%; top: 0; transform: rotate(var(--hour)); z-index: 40; } .clock__inner { background-blend-mode: overlay; background-position: center center; background-size: 200%; box-shadow: inset 0 1vmax 10vmax; font-size: 8vmin; line-height: 1; position: relative; width: calc(100% - 3vmin); } .clock__minute { clip-path: polygon(10% 15%, 50% calc(15% - 2vmin), 90% 15%, 100% calc(110% - 2vmin), 50% 110%, 0 calc(110% - 2vmin), 0 110%); height: 50%; top: 0; transform: rotate(var(--minute)); z-index: 30; } .clock__numerals { aspect-ratio: 1/1; border-radius: 100%; overflow: hidden; position: relative; width: 100%; } .clock__number { .........完整代码请登录后点击上方下载按钮下载查看
网友评论0