js+css实现极简风格的指针时钟显示时间代码
代码语言:html
所属分类:布局界面
代码描述:js+css实现极简风格的指针时钟显示时间代码
代码标签: js css 极简风格 指针 时钟 显示 时间 代码
下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开
<!DOCTYPE html> <html lang="en" > <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover"> <style> * { border: 0; box-sizing: border-box; margin: 0; padding: 0; } :root { --hue: 223; --bg: hsl(var(--hue),10%,90%); --fg: hsl(var(--hue),10%,10%); --primary: hsl(var(--hue),90%,50%); --trans-dur: 0.3s; font-size: calc(16px + (32 - 16) * (100vw - 320px) / (2560 - 320)); } body { background-color: var(--bg); color: var(--fg); display: flex; font: 1em/1.5 sans-serif; height: 100vh; transition: background-color var(--trans-dur), color var(--trans-dur); } main { margin: auto; padding: 1.5em 0; } .clock { --hrAngle: 0; --minAngle: 0; background-color: hsl(var(--hue),10%,95%); border-radius: 2.5em; box-shadow: -0.25em -0.25em 0.25em hsl(var(--hue),0%,85%) inset; margin-bottom: 0.75em; position: relative; width: 16em; height: 16em; transition: background-color var(--trans-dur), box-shadow var(--trans-dur); } .clock:before, .clock:after { content: ""; display: block; position: absolute; } .clock:before { background-color: hsl(var(--hue),10%,90%); border-radius: 2em; box-shadow: 0 0 0 0.125em hsl(0,0%,95%), 0 0 0.75em hsl(var(--hue),10%,70%), -0.25em -0.25em 0.5em 0.0625em hsl(0,0%,100%) inset, 0.25em 0.25em 0.5em hsl(var(--hue),10%,70%) inset; top: 0.75em; left: 0.75em; width: 14.5em; height: 14.5em; transition: background-color var(--trans-dur), box-shadow var(--trans-dur); } .clock:after { background-image: radial-gradient(100% 100% at center,hsla(0,0%,0%,0.5),hsla(0,0%,0%,0) 50%); top: 100%; left: -2em; width: 20em; height: 0.75em; } .clock__face, .clock__hand, .clock__hub, .clock__pegs { position: absolute; } .clock__face { border-radius: 50%; box-shadow: 0 0 0 0.0625em hsl(var(--hue),10%,95%) inset, 0 0 0 0.125em hsl(var(--hue),10%,80%) inset, 0 0 0 0.25em hsl(var(--hue),10%,85%) inset; top: 2em; left: 2em; width: 12em; height: 12em; transition: box-shadow var(--trans-dur); } .clock__hand { transition: background-color var(--trans-dur), box-shadow var(--trans-dur), filter var(--trans-dur); } .clock__hand--hr { background-color: none; box-shadow: none; filter: drop-shadow(0.125em 0.125em 0.125em hsl(var(--hue),10%,50%)); top: 50%; left: 50%; width: 0; height: 0; transform-origin: 50% 50%; } .clock__hand--hr:before, .clock__hand--hr:after { content: ""; display: block; position: absolute; transition: background-color var(--trans-dur), box-shadow var(--trans-dur); } .clock__hand--hr:before { border-radius: 50%; box-shadow: 0 0 0 0.75em var(--fg) inset; top: -1.5em; left: -1.5em; width: 3em; height: 3em; } .clock__hand--hr:after { transform: rotate(var(--hrAngle)) translateY(-1.25em); } .clock__hand--min { box-shadow: 0 0 0 1px hsl(0,0%,100%); transform: rotate(var(--minAngle)) translateY(-2.75em); } .clock__hand--hr:after, .clock__hand--min { background-color: var(--fg); border-radius: 0.5em; bottom: calc(50% - 0.375em); left: calc(50% - 0.375em); width: 0.75em; height: 2.25em; transform-origin: 50% calc(100% - 0.375em); } .clock__pegs { display: flex; justify-content: space-between; padding: 0 2.25em; top: 100%; width: 100%; z-index: 1; } .clock__pegs:be.........完整代码请登录后点击上方下载按钮下载查看
网友评论0