Heim Web-Frontend H5-Tutorial Realistische HTML5-Blattfallanimation_html5-Tutorial-Fähigkeiten

Realistische HTML5-Blattfallanimation_html5-Tutorial-Fähigkeiten

May 16, 2016 pm 03:45 PM
html5 动画

Diese HTML5-Animation zum Fallen von Blättern basiert auf dem Webkit-Kern, was bedeutet, dass diese Animation nur in einem Browser mit einem Webkit-Kern verwendet werden kann.

Quellcode-Download Demo-Adresse

HTML-Code

XML/HTML-CodeInhalt in die Zwischenablage kopieren
  1. <div id="container" >
  2. <div id="leafContainer" >div>
  3. <div id="message" >
  4. < /
  5. em> div>
  6. div>
  7. CSS-Code CSS-CodeInhalt in die Zwischenablage kopieren
    1. #container {   
    2.     Positionrelativ;   
    3.     Höhe700px;   
    4.     Breite500px;   
    5.     Rand10px automatisch;   
    6.     Überlaufversteckt;   
    7.     Rahmen4px durchgehend #5C090A;   
    8.     Hintergrund#4E4226 URL('images/backgroundLeaves.jpg'no-repeat top links;   
    9. }   
    10.   
    11. /* Definiert die Position und Abmessungen des leafContainer div */  
    12. #leafContainer    
    13. {   
    14.     Positionabsolut;   
    15.     Breite: 100 %;   
    16.     Höhe: 100 %;   
    17. }  
    18.   
    19. /* Definiert das Erscheinungsbild, die Position und die Abmessungen des Nachrichtendivs */  
    20. #message   
    21. {   
    22.     Positionabsolut;   
    23.     oben160px;   
    24.     Breite: 100 %;   
    25.     Höhe300px;   
    26.     Hintergrund:transparent URL( 'images/textBackground.png'wiederholen-x Mitte;   
    27.     Farbe#5C090A;   
    28.     Schriftgröße: 220 %;   
    29.     Schriftfamilie'Georgia';   
    30.     text-aligncenter;   
    31.     Auffüllung20px 10px;   
    32.     -webkit-box-sizing: border-box;   
    33.     -webkit-Hintergrund-Größe: 100 % 100 %;   
    34.     z-index: 1;   
    35. }   
    36.   
    37. p {   
    38.   Rand15px;   
    39. }   
    40.   
    41. a   
    42. {   
    43.   Farbe#5C090A;   
    44.   Textdekorationkeine;   
    45. }   
    46.   
    47. /* Legt die Farbe der Nachricht "Dino's Gardening-Service" fest.*/  
    48. em    
    49. {   
    50.     Schriftstärkefett;   
    51.     Schriftstilnormal;   
    52. }   
    53.   
    54. .phone {   
    55.   Schriftgröße: 150 %;   
    56.   vertikal ausrichtenMitte;   
    57. }  
    58.   
    59. /* Diese CSS-Regel wird auf alle div-Elemente im leafContainer-div angewendet.  
    60.    Es formatiert und animiert jedes LeafDiv.  
    61. */  
    62. #leafContainer > div    
    63. {   
    64.     Positionabsolut;   
    65.     Breite100px;   
    66.     Höhe100px;   
    67.   
    68.     /* Wir verwenden die folgenden Eigenschaften, um die Einblend- und Abklappanimationen auf jedes Blatt anzuwenden.  
    69.        Jede dieser Eigenschaften nimmt zwei Werte an. Diese Werte entsprechen jeweils einer Einstellung  
    70.        für Fade und Drop.  
    71.     */  
    72.     -webkit-animation-iteration-count: infinite, infinite;   
    73.     -webkit-animation-Richtungnormalnormal;   
    74.     -webkit-animation-timing-function: linear, ease-in;   
    75. }  
    76.   
    77. /* Diese CSS-Regel wird auf alle img-Elemente direkt in div-Elementen angewendet, die  
    78. sind
    79.    direkt im leafContainer div. Mit anderen Worten: Es stimmt mit den „img“-Elementen  
    80. überein
    81.    innerhalb der LeafDivs, die in der Funktion createALeaf() erstellt werden.  
    82. */  
    83. #leafContainer > div > img {   
    84.      Positionabsolut;   
    85.      Breite100px;   
    86.      Höhe100px;   
    87.   
    88.     /* Wir verwenden die folgenden Eigenschaften, um das Spin im Uhrzeigersinn oder das SpinAndFlip im Gegenuhrzeigersinn anzupassen  
    89.        Animationen auf jedem Blatt.  
    90.        Die Funktion „createALeaf“ in der Datei „Leaves.js“ bestimmt, ob ein Blatt das  
    91. hat
    92.        Spin-Animation im Uhrzeigersinn oder gegen den Uhrzeigersinn.  
    93.     */  
    94.      -webkit-animation-iteration-count: infinite;   
    95.      -webkit-animation-Richtung: alternate;   
    96.      -webkit-animation-timing-function: ease-in-out;   
    97.      -webkit-transform-origin: 50 % -100 %;   
    98. }   
    99.   
    100. /* Versteckt ein Blatt gegen Ende der Animation.*/  
    101. @-webkit-keyframes fade   
    102. {   
    103.     /* Zeige ein Blatt, während in oder unter 95 Prozent der Animation sind und verstecke es, andernfalls */  
    104.     0 %   { Deckkraft: 1; }   
    105.     95 %  { Deckkraft: 1; }   
    106.     100 % { opacity: 0; }   
    107. }  
    108.   
    109. /* Lässt ein Blatt von -300 auf 600 Pixel in der y-Achse fallen */  
    110. @-webkit-keyframes drop   
    111. {   
    112.     /* Bewegen ein Blatt auf -300 Pixel in der y-Achse am Start der Animation.*/  
    113.     0%   { -webkit-transform: translate(0px, -50px); }   
    114.     /* Ein Blatt auf der Y-Achse am Ende der Animation auf 600 Pixel verschieben.*/  
    115.     100 % { -webkit-transform: translate(0px650px); }   
    116. }   
    117.   
    118. /* Dreht ein Blatt von -50 bis 50 Grad im 2D-Raum */  
    119. @-webkit-keyframes im UhrzeigersinnSpin   
    120. {   
    121.     /* Ein Blatt im 2D-Raum zu Beginn der Animation um -50 Grad drehen.*/  
    122.     0 %   { -webkit-transform: rotate(-50deg); }   
    123.     /*  Ein Blatt im 2D-Raum am Ende der Animation um 50 Grad drehen.*/  
    124.     100 % { -webkit-transform: rotate(50deg); }   
    125. }   
    126.   
    127. /* Kippt ein Blatt und dreht es von 50 auf -50 Grad im 2D-Raum */  
    128. @-webkit-keyframes gegen den UhrzeigersinnSpinAndFlip    
    129. {   
    130.     /* Ein Blatt umdrehen und im 2D-Raum zu Beginn der Animation um 50 Grad drehen.*/  
    131.     0 %   { -webkit-transform: scale(-1, 1) rotate(50deg); }   
    132.     /* Ein Blatt umdrehen und am Ende der Animation um -50 Grad im 2D-Raum drehen.*/  
    133.     100 % { -webkit-transform: scale(-1, 1) rotate(-50deg); }   
    134. }   

JavaScript代码

JavaScript-Code复制内容到剪贴板
  1. /* Definieren Sie die Anzahl der Blätter, die in der Animation verwendet werden sollen.*/  
  2. const NUMBER_OF_LEAVES = 30;   
  3.   
  4. /*   
  5.     Wird aufgerufen, wenn die Seite „Fallende Blätter“ vollständig geladen ist.  
  6. */  
  7. Funktion init()   
  8. {   
  9.     /* Erhalten Sie einen Verweis auf das Element, das die Blätter enthalten wird.*/  
  10.     var container = document.getElementById('leafContainer');   
  11.     /* Füllen Sie den leeren Behälter mit neuen Blättern */  
  12.     for (var i = 0; i < NUMBER_OF_LEAVES; i )    
  13.     {   
  14.         container.appendChild(createALeaf());   
  15.     }   
  16. }   
  17.   
  18. /*  
  19.     Erhält die niedrigsten und höchsten Werte eines Bereichs und  
  20.     gibt eine zufällige Ganzzahl zurück, die in diesen Bereich fällt.  
  21. */  
  22. Funktion randomInteger(low, high)   
  23. {   
  24.     return low   Math.floor(Math.random() * (high - low));   
  25. }   
  26.   
  27. /*  
  28.    Erhält die niedrigsten und höchsten Werte eines Bereichs und  
  29.    gibt einen zufälligen Float zurück, der in diesen Bereich fällt.  
  30. */  
  31. Funktion randomFloat(low, high)   
  32. {   
  33.     return low   Math.random() * (high - low);   
  34. }   
  35.   
  36. /*  
  37.     Empfangen eine Zahl und gibt ihren CSS-Pixelwert zurück.  
  38. */  
  39. Funktion pixelValue(value)   
  40. {   
  41.     return value   'px';   
  42. }  
  43.   
  44. /*  
  45.     Gibt einen Dauerwert für die fallende Animation zurück.  
  46. */  
  47.   
  48. Funktion durationValue(value)   
  49. {   
  50.     Rückgabe Wert   's';   
  51. }  
  52.   
  53. /*  
  54.     Verwendet ein img-Element, um jedes Blatt zu erstellen. „Leaves.css“ implementiert zwei Spins   
  55.     Animationen für die Blätter: SpinAndFlip im Uhrzeigersinn und SpinAndFlip gegen den Uhrzeigersinn. Dies  
  56.     Funktion legt fest, welche dieser Drehanimationen auf jedes Blatt angewendet werden sollen.  
  57.  
  58. */  
  59. Funktion createALeaf()   
  60. {   
  61.     /* Erstellen Sie zunächst ein Wrapper-Div und ein leeres IMG-Element.*/  
  62.     var leafDiv = document.createElement('div');   
  63.     var image = document.createElement('img');   
  64.   
  65.     /* Wählen Sie zufällig ein Blattbild aus und weisen Sie es dem neu erstellten Element zu.*/  
  66.     image.src = 'images/realLeaf'   randomInteger(1, 5)   '.png';   
  67.   
  68.     leafDiv.style.top = "-100px";   
  69.   
  70.     /* Positionieren Sie das Blatt an einer zufälligen Stelle auf dem Bildschirm.*/  
  71.     leafDiv.style.left = pixelValue(randomInteger(0, 500));   
  72.   
  73.     /* Wähle zufällig eine Spin-Animation aus.*/  
  74.     var spinAnimationName = (Math.random() < 0.5) ? 'im UhrzeigersinnSpin' : 'gegen den UhrzeigersinnSpinAndFlip';   
  75.   
  76.     /* Legen Sie die Eigenschaft -webkit-animation-name mit diesen Werten fest.*/  
  77.     leafDiv.style.webkitAnimationName = 'fade, drop';   
  78.     image.style.webkitAnimationName = spinAnimationName;   
  79.   
  80.     /* Ermitteln Sie eine zufällige Dauer für die Fade- und Drop-Animationen.*/  
  81.     var fadeAndDropDuration = durationValue(randomFloat(5, 11));   
  82.   
  83.     /* Ermitteln Sie eine weitere zufällige Dauer für die Drehanimation.*/  
  84.     var spinDuration = durationValue(randomFloat(4, 8));   
  85.     /* Legen Sie die Eigenschaft -webkit-animation-duration mit diesen Werten fest.*/  
  86.     leafDiv.style.webkitAnimationDuration = fadeAndDropDuration   ', '   fadeAndDropDuration;   
  87.   
  88.     var leafDelay = durationValue(randomFloat(0, 5));   
  89.     leafDiv.style.webkitAnimationDelay = leafDelay   ', '   leafDelay;   
  90.   
  91.     image.style.webkitAnimationDuration = spinDuration;   
  92.   
  93.     // füge das  hinzu. zum 
      
  94.     leafDiv.appendChild(image);   
  95.   
  96.     /* Dieses IMG-Element zurückgeben, damit es dem Dokument hinzugefügt werden kann.*/  
  97.     return leafDiv;   
  98. }   
  99.   
  100. /* Ruft die Init-Funktion auf, wenn die Seite „Fallende Blätter“ vollständig geladen ist.*/  
  101. window.addEventListener('load', init, false);   

以上就是本文的全部内容,希望对大家学习有所帮助.

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Tabellenrahmen in HTML Tabellenrahmen in HTML Sep 04, 2024 pm 04:49 PM

Anleitung zum Tabellenrahmen in HTML. Hier besprechen wir verschiedene Möglichkeiten zum Definieren von Tabellenrändern anhand von Beispielen für den Tabellenrand in HTML.

Verschachtelte Tabelle in HTML Verschachtelte Tabelle in HTML Sep 04, 2024 pm 04:49 PM

Dies ist eine Anleitung für verschachtelte Tabellen in HTML. Hier diskutieren wir anhand der entsprechenden Beispiele, wie man eine Tabelle innerhalb der Tabelle erstellt.

HTML-Rand links HTML-Rand links Sep 04, 2024 pm 04:48 PM

Anleitung zum HTML-Rand links. Hier besprechen wir einen kurzen Überblick über HTML margin-left und seine Beispiele sowie seine Code-Implementierung.

HTML-Tabellenlayout HTML-Tabellenlayout Sep 04, 2024 pm 04:54 PM

Leitfaden zum HTML-Tabellenlayout. Hier besprechen wir die Werte des HTML-Tabellenlayouts zusammen mit den Beispielen und Ausgaben im Detail.

HTML-geordnete Liste HTML-geordnete Liste Sep 04, 2024 pm 04:43 PM

Leitfaden zur HTML-geordneten Liste. Hier besprechen wir auch die Einführung von HTML-geordneten Listen und Typen sowie deren Beispiele

HTML-Eingabeplatzhalter HTML-Eingabeplatzhalter Sep 04, 2024 pm 04:54 PM

Leitfaden für HTML-Eingabeplatzhalter. Hier besprechen wir die Beispiele für HTML-Eingabeplatzhalter zusammen mit den Codes und Ausgaben.

Text in HTML verschieben Text in HTML verschieben Sep 04, 2024 pm 04:45 PM

Anleitung zum Verschieben von Text in HTML. Hier besprechen wir eine Einführung, wie Marquee-Tags funktionieren, mit Syntax und Beispielen für die Implementierung.

HTML-Onclick-Button HTML-Onclick-Button Sep 04, 2024 pm 04:49 PM

Anleitung zum HTML-OnClick-Button. Hier diskutieren wir deren Einführung, Funktionsweise, Beispiele und Onclick-Events in verschiedenen Veranstaltungen.

See all articles