


Comment dessiner une horloge dynamique circulaire en utilisant CSS3 (explication détaillée)
Dans cette époque où le temps c'est de l'argent, les gens deviennent de plus en plus conscients du temps, non seulement dans la vie quotidienne, mais aussi surtout lorsqu'ils surfent sur Internet. Ainsi, lors du développement du front-end, apprendre à utiliser le CSS3 pour créer une horloge. c'est suffisant Cela semble nécessaire. Le contenu que cet article vous apporte porte sur ce sujet et a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer. J'espère qu'il vous sera utile.
Le principe de l'utilisation de CSS3 pour dessiner une horloge dynamique circulaire
Comme nous le savons tous, le La forme div est un carré, nous devons alors d'abord utiliser la propriété border-radius pour la transformer en cercle.
Afin de faire pivoter le pointeur, nous devons utiliser -webkit-transform-origin:center 100px pour définir notre point de base de rotation. Utilisez ensuite -webkit-transform: rotate(0); pour laisser notre li faire pivoter l'angle correspondant pour former l'échelle correspondante.
Après avoir conçu l'échelle, vous devez impliquer un sélecteur nth-of-type() pour spécifier à quel élément enfant il appartient à l'élément parent.
Au centre même de l'horloge circulaire, nous devons définir une icône div pour le point de connexion du pointeur.
Ensuite, nous utilisons js pour obtenir le div et restituer l'échelle du cadran.
Enfin, démarrez une minuterie et exécutez la fonction toutes les secondes.
Code pour dessiner une horloge dynamique circulaire en utilisant CSS3
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"/> <title>钟表</title> <style id="css"> #wrap{width:200px; height:200px; border:2px solid #000; margin:100px auto;border-radius:50%; position:relative;} #wrap ul{margin:0; padding:0; height:200px; position:relative; list-style:none;} #wrap ul li{width:2px; height:6px; background:#000; position:absolute; left:99px; top: 0;-webkit-transform-origin:center 100px;} /*#wrap ul li:nth-of-type(1){-webkit-transform: rotate(0);} #wrap ul li:nth-of-type(2){-webkit-transform: rotate(6deg);} #wrap ul li:nth-of-type(3){-webkit-transform: rotate(12deg);} #wrap ul li:nth-of-type(4){-webkit-transform: rotate(18deg);} #wrap ul li:nth-of-type(5){-webkit-transform: rotate(24deg);} #wrap ul li:nth-of-type(6){-webkit-transform: rotate(30deg);} #wrap ul li:nth-of-type(7){-webkit-transform: rotate(36deg);} #wrap ul li:nth-of-type(8){-webkit-transform: rotate(42deg);}*/ #wrap ul li:nth-of-type(5n+1){ height:12px;} #hour{width:6px; height:45px; background:#000; position:absolute; left:97px; top:55px;-webkit-transform-origin:bottom ;} #min{width:4px; height:65px; background:#999; position:absolute; left:98px; top:35px;-webkit-transform-origin:bottom ;} #sec{width:2px; height:80px; background:red; position:absolute; left:99px; top:20px;-webkit-transform-origin:bottom ;} .icon{width:20px; height:20px; background:#000; border-radius:50%; position:absolute; left:90px; top: 90px;} </style> </head> <body> <div id="wrap"> <ul id="list"> <!--<li></li> <li></li> <li></li> <li></li> <li></li> <li></li> <li></li> <li></li>--> </ul> <div id="hour"></div> <div id="min"></div> <div id="sec"></div> <div></div> </div> <script> var oList=document.getElementById("list");//获取到刻度 var oCss=document.getElementById("css"); var oHour=document.getElementById("hour");//获取时针 var oMin=document.getElementById("min");//获取分针 var oSec=document.getElementById("sec");//获取秒针 var oLi=""; var sCss=""; for (var i=0;i<60;i++) { //一个表盘总共是60个刻度 sCss+="#wrap ul li:nth-of-type("+(i+1)+"){-webkit-transform: rotate("+i*6+"deg);}"; oLi+="<li></li>"; }; oList.innerHTML=oLi; oCss.innerHTML+=sCss;//表盘刻度渲染完成 toTime(); setInterval(toTime,1000); function toTime(){ var oDate=new Date();//获取当前时间 var iSec=oDate.getSeconds();//获取当前秒 var iMin=oDate.getMinutes()+iSec/60;//获取当前分 var iHour=oDate.getHours()+iMin/60;//获取当前时 oSec.style.WebkitTransform="rotate("+iSec*6+"deg)";//秒针转动角度1秒6度 (表盘一圈360度一圈60秒所以一秒6度) oMin.style.WebkitTransform="rotate("+iMin*6+"deg)";//分钟转动角度1分6度 (表盘一圈360度一圈60分所以一分6度) oHour.style.WebkitTransform="rotate("+iHour*30+"deg)";//时针转动角度一小时30度(表盘一圈360度一圈12小时所以一小时30度) }; </script> </body> </html>
Exemple l'effet est comme indiqué sur l'image
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

CSS Grid est un outil puissant pour créer des dispositions Web complexes et réactives. Il simplifie la conception, améliore l'accessibilité et offre plus de contrôle que les méthodes plus anciennes.

L'article traite de CSS Flexbox, une méthode de mise en page pour l'alignement et la distribution efficaces de l'espace dans les conceptions réactives. Il explique l'utilisation de Flexbox, la compare à la grille CSS et détaille la prise en charge du navigateur.

L'article traite des techniques de création de sites Web réactifs à l'aide de CSS, y compris des balises de méta de la fenêtre, des grilles flexibles, des médias fluides, des requêtes multimédias et des unités relatives. Il couvre également l'utilisation de la grille CSS et de Flexbox ensemble et recommande le cadre CSS

L'article traite de la propriété CSS-Box-Sizing, qui contrôle comment les dimensions des éléments sont calculées. Il explique des valeurs telles que la boîte de contenu, la boîte de bordure et la boîte de padding, et leur impact sur la conception de la disposition et l'alignement de la forme.

L'article discute de la création d'animations à l'aide de CSS, de propriétés clés et de combinaison avec JavaScript. Le principal problème est la compatibilité du navigateur.

L'article discute de l'utilisation de CSS pour les transformations 3D, les propriétés clés, la compatibilité du navigateur et les considérations de performances pour les projets Web. (Compte de caractère: 159)

L'article discute de l'utilisation des gradients CSS (linéaire, radial, répétant) pour améliorer les visuels du site Web, l'ajout de profondeur, de concentration et d'esthétique moderne.

L'article traite des pseudo-éléments dans CSS, de leur utilisation dans l'amélioration du style HTML et des différences par rapport aux pseudo-classes. Fournit des exemples pratiques.


Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

Outils chauds

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

VSCode Windows 64 bits Télécharger
Un éditeur IDE gratuit et puissant lancé par Microsoft

Dreamweaver CS6
Outils de développement Web visuel

Dreamweaver Mac
Outils de développement Web visuel

SublimeText3 Linux nouvelle version
Dernière version de SublimeText3 Linux
