文字标签实现时钟特效
代码语言:html
所属分类:其他
下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Analog Clock with Text Labels</title> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="stylesheet" href="http://repo.bfw.wiki/bfwrepo/css/reset.min.css"> <style> main { display: grid; grid-template-areas: "l t r" "l content r" "l b r"; grid-template-columns: 1fr max-content 1fr; grid-template-rows: 1fr max-content 1fr; width: 100vw; height: 100vh; background: #b4c4cc; } #clock { position: relative; grid-area: content; width: 300px; height: 300px; border-radius: 50%; border: double 10px #39454b; background: linear-gradient(-45deg, #39454b 20%, #101017); box-shadow: 15px 15px 5px #919ea5; } .dial { position: absolute; top: calc(50% - 10px); left: calc(50% - 10px); width: 20px; height: 20px; box-sizing: border-box; border-radius: 50%; border: dotted 1px #101017; background: #4c5c64; z-index: 1; } /* Clock hands */ .hand { position: absolute; transform-origin: 0px center; /* Fix aliasing caused by transform: rotate() */ outline: 1px solid transparent; } #hour-hand { /* center hand */ top: calc(50% - 2px); left: 50%; width: 80px; height: 2px; border: 1px solid #fff; border-radius: 3px; background: #b7ddf0; z-index: 2; } #minute-hand { /* center hand */ top: calc(50% - 2px); left: 50%; width: 120px; height: 2px; border: 1px solid #fff; border-radius: 3px; background: #b7ddf0; z-index: 3; } #second-hand { /* center hand */ top: calc(50% - 1px); left: 80px; width: 200px; height: 2px; border-radius: 1px; background: #b7ddf0; transform-origin: 70px center; z-index: 5; } #second-hand .ring { width: 12px; height: 10px; margin-top: -5px; margin-left: 15px; background: transparent; border: 1px solid #b7ddf0; border-radius: 50%; z-index: 11; } /* Long form text displays */ .display-text li { list-style-type: none; font-size: 16px; line-height: 20px; font-family: Arial, Helvetica, sans-serif; text-transform: uppercase; color: #fff; } #time-display { position: absolute; top: 25%; left: calc(50% - 75px); min-width: 150px; margin: 0; text-align: center; transition: 1s ease-in; } #time-display li { display: block; } #calendar-display { position: absolute; top: 75%; left: calc(50% - 75px); min-width: 150px; margin: 0; text-align: center; } #calendar-display li { display: inline-block; } </style> </head> <body translate="no"> <main> <div id="clock"> <div class="dial"></div> <ul id="time-display" class="display-text"> <li id="hour-display"></li> <li id="minute-display"></li> </ul> <ul id="calendar-display" class="display-text"> <li id="day-display"></li> <li id="month-display"></li> <li id="date-display"></li> </ul> <div id="second-hand" class="hand"> <div class="ring"></div> </div> <div id="minute-hand" class="hand"></div> <div id="hour-hand" class="hand"></div> </div> </main> <script> // Getters const getDomElements = () => { const hourDisplay = document.getElementById("hour-display"); const minuteDisplay = document.getElementById("minute-display"); const dayDisplay = document.getElementById("day-display"); const monthDisplay = document.g.........完整代码请登录后点击上方下载按钮下载查看
网友评论0