


Tutoriel HTML5 pour créer une animation d'amour 3D, un cadeau romantique pour votre petite amie_html5 compétences du didacticiel
Qui a dit que les programmeurs ne savaient pas être romantiques ? Voyons à quel point les programmeurs sont romantiques. Aujourd'hui, j'ai vu une animation d'amour 3D réalisée en HTML5 et CSS3 sur un site Web étranger, que j'offrirais à mon bien-aimé le jour de la Saint-Valentin. . , toujours très bon. Bien sûr. Nous pouvons utiliser quelques éléments romantiques en arrière-plan. Par exemple, ajoutez de belles photos de votre petite amie. Cela constitue un cadeau de Saint-Valentin peu coûteux mais significatif. Vous pouvez cliquer sur la DÉMO pour y jeter un œil. D'abord les rendus :
Le code d'implémentation est le suivant :
code html :
- <div class='heart3d'>
- <div class='rib1′ >div>
- <div class='rib2′ >div>
- <div class='rib3′ >div>
- <div class='rib4′ >div>
- <div class='rib5′ >div>
- <div class='rib6′ >div>
- <div class='rib7′ >div>
- <div class='rib8′ >div>
- <div class='rib9′ >div>
- <div class='rib10′ >div>
- <div class='rib11′ >div>
- <div class='rib12′ >div>
- <div class='rib13′ >div>
- <div class='rib14′ >div>
- <div class='rib15′ >div>
- <div class='rib16′ >div>
- <div class='rib17′ >div>
- <div class='rib18′ >div>
- <div class='rib19′ >div>
- <div class='rib20′ >div>
- <div class='rib21′ >div>
- <div class='rib22′ >div>
- <div class='rib23′ >div>
- <div class='rib24′ >div>
- <div class='rib25′ >div>
- <div class='rib26′ >div>
- <div class='rib27′ >div>
- <div classe='rib28′ >div>
- <div class='rib29′ >div>
- <div class='rib30′ >div>
- <div class='rib31′ >div>
- <div class='rib32′ >div>
- <div class='rib33′ >div>
- <div class='rib34′ >div>
- <div class='rib35′ >div>
- <div class='rib36′ >div>
- div>
这么多div,主要是构造爱心的线条区域。
CSS代码:
- .heart3d {
- position : absolue ;
- haut : 0 ;
- droitedroite : 0 ;
- basbas : 0 ;
- gauche : 0 ;
- marge : auto ;
- largeur : 100px ;
- hauteur : 160px ;
- -webkit-transform-style : preserve-3d ;
- transform-style : preserve-3d ;
- -webkit-animation : tourner 15 s linéaire infini ;
- animation : tournage 15 s linéaire infini ;
- }
- .heart3d [class^="côte"] {
- position : absolue ;
- largeur : 100px ;
- hauteur : 160px ;
- bordure : solide #f22613;
- largeur de bordure : 1px 1px 0 0 ;
- bordure-rayon : 50% 50% 0 / 40% 50% 0 ;
- }
- .heart3d [class$="1"] {
- -webkit-transform : rotateY(10deg) rotateZ(45deg) translateX(30px);
- transformer : rotateY(10deg) rotateZ(45deg) translateX(30px);
- }
- .heart3d [class$="2"] {
- -webkit-transform : rotateY(20deg) rotateZ(45deg) translateX(30px);
- transformer : rotateY(20deg) rotateZ(45deg) translateX(30px);
- }
- .heart3d [class$="3"] {
- -webkit-transform : rotateY(30deg) rotateZ(45deg) translateX(30px);
- transformer : rotateY(30deg) rotateZ(45deg) translateX(30px);
- }
- .heart3d [class$="4"] {
- -webkit-transform : rotateY(40deg) rotateZ(45deg) translateX(30px);
- transformer : rotateY(40deg) rotateZ(45deg) translateX(30px);
- }
- .heart3d [class$="5"] {
- -webkit-transform : rotateY(50deg) rotateZ(45deg) translateX(30px);
- transformer : rotateY(50deg) rotateZ(45deg) translateX(30px);
- }
- .heart3d [class$="6"] {
- -webkit-transform : rotateY(60deg) rotateZ(45deg) translateX(30px);
- transformer : rotateY(60deg) rotateZ(45deg) translateX(30px);
- }
- .heart3d [class$="7"] {
- -webkit-transform : rotateY(70deg) rotateZ(45deg) translateX(30px);
- transformer : rotateY(70deg) rotateZ(45deg) translateX(30px);
- }
- .heart3d [class$="8"] {
- -webkit-transform : rotateY(80deg) rotateZ(45deg) translateX(30px);
- transformer : rotateY(80deg) rotateZ(45deg) translateX(30px);
- }
- .heart3d [class$="9"] {
- -webkit-transform : rotateY(90deg) rotateZ(45deg) translateX(30px);
- transformer : rotateY(90deg) rotateZ(45deg) translateX(30px);
- }
- .heart3d [class$="10"] {
- -webkit-transform : rotateY(100deg) rotateZ(45deg) translateX(30px);
- transformer : rotateY(100deg) rotateZ(45deg) translateX(30px);
- }
- .heart3d [class$="11"] {
- -webkit-transform : rotateY(110deg) rotateZ(45deg) translateX(30px);
- transformer : rotateY(110deg) rotateZ(45deg) translateX(30px);
- }
- .heart3d [class$="12"] {
- -webkit-transform : rotateY(120deg) rotateZ(45deg) translateX(30px);
- transformer : rotateY(120deg) rotateZ(45deg) translateX(30px);
- }
- .heart3d [class$="13"] {
- -webkit-transform : rotateY(130deg) rotateZ(45deg) translateX(30px);
- transformer : rotateY(130deg) rotateZ(45deg) translateX(30px);
- }
- .heart3d [class$="14"] {
- -webkit-transform : rotateY(140deg) rotateZ(45deg) translateX(30px);
- transformer : rotateY(140deg) rotateZ(45deg) translateX(30px);
- }
- .heart3d [class$="15"] {
- -webkit-transform : rotateY(150deg) rotateZ(45deg) translateX(30px);
- transformer : rotateY(150deg) rotateZ(45deg) translateX(30px);
- }
- .heart3d [class$="16"] {
- -webkit-transform : rotateY(160deg) rotateZ(45deg) translateX(30px);
- transformer : rotateY(160deg) rotateZ(45deg) translateX(30px);
- }
- .heart3d [class$="17"] {
- -webkit-transform : rotateY(170deg) rotateZ(45deg) translateX(30px);
- transformer : rotateY(170deg) rotateZ(45deg) translateX(30px);
- }
- .heart3d [class$="18"] {
- -webkit-transform : rotateY(180deg) rotateZ(45deg) translateX(30px);
- transformer : rotateY(180deg) rotateZ(45deg) translateX(30px);
- }
- .heart3d [class$="19"] {
- -webkit-transform : rotateY(190deg) rotateZ(45deg) translateX(30px);
- transformer : rotateY(190deg) rotateZ(45deg) translateX(30px);
- }
- .heart3d [class$="20"] {
- -webkit-transform : rotateY(200deg) rotateZ(45deg) translateX(30px);
- transformer : rotateY(200deg) rotateZ(45deg) translateX(30px);
- }
- .heart3d [class$="21"] {
- -webkit-transform : rotateY(210deg) rotateZ(45deg) translateX(30px);
- transformer : rotateY(210deg) rotateZ(45deg) translateX(30px);
- }
- .heart3d [class$="22"] {
- -webkit-transform : rotateY(220deg) rotateZ(45deg) translateX(30px);
- transformer : rotateY(220deg) rotateZ(45deg) translateX(30px);
- }
- .heart3d [class$="23"] {
- -webkit-transform : rotateY(230deg) rotateZ(45deg) translateX(30px);
- transformer : rotateY(230deg) rotateZ(45deg) translateX(30px);
- }
- .heart3d [class$="24"] {
- -webkit-transform : rotateY(240deg) rotateZ(45deg) translateX(30px);
- transformer : rotateY(240deg) rotateZ(45deg) translateX(30px);
- }
- .heart3d [class$="25"] {
- -webkit-transform : rotateY(250deg) rotateZ(45deg) translateX(30px);
- transformer : rotateY(250deg) rotateZ(45deg) translateX(30px);
- }
- .heart3d [class$="26"] {
- -webkit-transform : rotateY(260deg) rotateZ(45deg) translateX(30px);
- transformer : rotateY(260deg) rotateZ(45deg) translateX(30px);
- }
- .heart3d [class$="27"] {
- -webkit-transform : rotateY(270deg) rotateZ(45deg) translateX(30px);
- transformer : rotateY(270deg) rotateZ(45deg) translateX(30px);
- }
- .heart3d [class$="28"] {
- -webkit-transform : rotateY(280deg) rotateZ(45deg) translateX(30px);
- transformer : rotateY(280deg) rotateZ(45deg) translateX(30px);
- }
- .heart3d [class$="29"] {
- -webkit-transform : rotateY(290deg) rotateZ(45deg) translateX(30px);
- transformer : rotateY(290deg) rotateZ(45deg) translateX(30px);
- }
- .heart3d [class$="30"] {
- -webkit-transform : rotateY(300deg) rotateZ(45deg) translateX(30px);
- transformer : rotateY(300deg) rotateZ(45deg) translateX(30px);
- }
- .heart3d [class$="31"] {
- -webkit-transform: rotateY(310deg) rotateZ(45deg) translateX(30px);
- 轉換: rotateY(310deg) rotateZ(45deg) translateX(30px);
- }
- .heart3d [class$="32"] {
- -webkit-transform: rotateY(320deg) rotateZ(45deg) translateX(30px);
- 轉換: rotateY(320deg) rotateZ(45deg) translateX(30px);
- }
- .heart3d [class$="33"] {
- -webkit-transform: rotateY(330deg) rotateZ(45deg) translateX(30px);
- 轉換: rotateY(330deg) rotateZ(45deg) translateX(30px);
- }
- .heart3d [class$="34"] {
- -webkit-transform: rotateY(340deg) rotateZ(45deg) translateX(30px);
- 轉換: rotateY(340deg) rotateZ(45deg) translateX(30px);
- }
- .heart3d [class$="35"] {
- -webkit-transform: rotateY(350deg) rotateZ(45deg) translateX(30px);
- 轉換: rotateY(350deg) rotateZ(45deg) translateX(30px);
- }
- .heart3d [class$="36"] {
- -webkit-transform: rotateY(360deg) rotateZ(45deg) translateX(30px);
- 轉換: rotateY(360deg) rotateZ(45deg) translateX(30px);
- }
對這些線條進行渲染,從而產生3D的視覺效果。
然後定義了一組名稱為spin的HTML5動畫:
- @-webkit-keyframes 旋轉 {
- 至 {
- -webkit-transform:旋轉Y(360度)旋轉X(360度);
- 轉換:旋轉Y(360度)旋轉X(360度);
- }
- }
- @keyframes 旋轉 {
- 至 {
- -webkit-transform:旋轉Y(360度)旋轉X(360度);
- 轉換:旋轉Y(360度)旋轉X(360度);
- }
- }
以上就是HTML代碼和CSS代碼實現的3D愛心動畫效果,浪漫的小伙子可以試著學習一下哦,又get一個交友技能,謝謝閱讀,希望能幫到大家,請繼續關注腳本之家,我們會努力分享更多優秀的文章。

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

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

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

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Cet article explique comment intégrer l'audio dans HTML5 en utilisant l'AUDIO & GT; Element, y compris les meilleures pratiques pour la sélection du format (MP3, Ogg Vorbis), l'optimisation des fichiers et le contrôle JavaScript pour la lecture. Il met l'accent sur l'utilisation de plusieurs audio F

L'article traite de la gestion de la confidentialité de l'emplacement des utilisateurs et des autorisations à l'aide de l'API Geolocation, mettant l'accent sur les meilleures pratiques pour demander des autorisations, assurer la sécurité des données et se conformer aux lois sur la confidentialité.

L'article discute de l'utilisation de l'API de visibilité de la page HTML5 pour détecter la visibilité de la page, améliorer l'expérience utilisateur et optimiser l'utilisation des ressources. Les aspects clés comprennent la pause des supports, la réduction de la charge du processeur et la gestion de l'analyse en fonction des changements de visibilité.

L'article discute de l'utilisation de balises Meta pour contrôler la mise à l'échelle des pages sur les appareils mobiles, en se concentrant sur des paramètres tels que la largeur et l'échelle initiale pour une réactivité et des performances optimales. COMMANDE: 159

Cet article explique comment créer et valider les formulaires HTML5. Il détaille le & lt; formulaire & gt; élément, types d'entrée (texte, e-mail, numéro, etc.) et attributs (requis, modèle, min, max). Les avantages des formes HTML5 sur les méthodes plus anciennes, incl

Cet article détaille la création de jeux HTML5 interactifs à l'aide de JavaScript. Il couvre la conception de jeux, la structure HTML, le style CSS, la logique JavaScript (y compris la gestion des événements et l'animation) et l'intégration audio. Bibliothèques JavaScript essentielles (Phaser, Pi

L'article explique comment utiliser l'API HTML5 Drag and Drop pour créer des interfaces utilisateur interactives, détaillant les étapes pour rendre les éléments dragables, gérer les événements clés et améliorer l'expérience utilisateur avec des commentaires personnalisés. Il discute également des pièges communs à un

Cet article explique l'API HTML5 WebSockets pour la communication client-serveur bidirectionnelle en temps réel. Il détaille les implémentations côté client (JavaScript) et côté serveur (Python / Flask), résolvant des défis tels que l'évolutivité, la gestion de l'état, un
