Ursprünglicher Link https://github.com/XboxYan/no… Ein Button ist wahrscheinlich eines der häufigsten Elemente einer Webseite. Die meisten davon sind unauffällig. Wenn Sie auf einen solchen Button stoßen, wären Sie versucht, noch ein paar Mal darauf zu klicken? Normalerweise ist die erste Reaktion auf diese Art von Effekt die Verwendung Der Effekt ist noch schockierender. Natürlich hat die Partikel erzeugen Neben der <Schaltfläche> Taste <i></i> <i></i> <i></i> <i></i> <i></i> ... </button> Generell gefällt mir dieser Ansatz nicht besonders. Er hat zu viele Tags, die Struktur ist nicht schön und er kann andere Auswirkungen auf bestehende Seiten haben (in vielen Fällen ist es nicht praktisch, die ursprüngliche Schauen wir uns dann die 1.Box-Schatten Schauen wir uns zunächst .button::vor{ Position: absolut; Inhalt: ''; Breite: 5px; Höhe: 5px; Randradius: 50 %; Hintergrundfarbe: #ff0081; Box-Shadow: 10px 10px #ff0081,15px 0px 0 2px #ff0081,20px 15px 0 3px #ff0081,...;/*Unendliche Überlagerung*/ } Es gibt einige Auswirkungen, das Debuggen dauert nur länger. Position und Größe der Partikel werden hauptsächlich durch den Versatz und die Ausdehnung bestimmt. Der Versatz kann hier jedoch nur in 2. Hintergrundbild In CSS3 kann .meineKlasse { Hintergrund: Hintergrund1, Hintergrund2, /*...*/ HintergrundN; } Hier können wir .button::vor{ Position: absolut; Inhalt: ''; links: -2em; rechts: -2em; oben: -2em; unten: -2em; Zeigerereignisse: keine; Hintergrundwiederholung: keine Wiederholung; Hintergrundbild: radialer Farbverlauf (Kreis, #ff0081 20 %, transparent 0), radial-gradient(Kreis, #ff0081 20%, transparent 0), radial-gradient(Kreis, #ff0081 20%, transparent 0), radial-gradient(Kreis, #ff0081 20%, transparent 0), ...; Hintergrundgröße: 10 % 10 %, 20 % 20 %, 15 % 15 %, …; Hintergrundposition: 18 % 40 %, 20 % 31 %, 30 % 30 %, …; } Hier werden Dadurch entsteht ein einfacher Partikeleffekt. Bewegen Sie sich Obwohl Der Animationseffekt ist sehr einfach: Die Partikel breiten sich vom Zentrum aus nach außen aus und verschwinden allmählich. Übergang Schauen wir uns zunächst die .button::vor{ Übergang: 0,75 s Hintergrundposition, 75 s Hintergrundgröße, } .button:hover::vorher{ Hintergrundposition: 5 % 44 %, -5 % 20 %, 7 % 5 % …; Hintergrundgröße: 0 % 0 %; } Natürlich ist es definitiv nicht ideal, es direkt so einzustellen. Wenn die Maus geht, schrumpft sie wieder. Der Effekt ist wie folgt Wir möchten, dass die Maus beim Weggehen nicht zurückschreckt. Wie können wir das erreichen? Das ist ganz einfach. Stellen Sie .button:hover::vorher{ Hintergrundposition: 5 % 44 %, -5 % 20 %, 7 % 5 % …; Hintergrundgröße: 0 % 0 %; Übergang: 0,75 s Hintergrundposition, 75 s Hintergrundgröße, } Fühlt sich das ein bisschen besser an? Klicken Sie hier, um es anzuzeigen. Was müssen wir tun, wenn beim Klicken eine Partikelanimation erscheinen soll? Hier müssen wir die Pseudoklasse Wenn wir der .button:aktiv::vor{ Hintergrundposition: 5 % 44 %, -5 % 20 %, 7 % 5 % …; Hintergrundgröße: 0 % 0 %; Übergang: 0,75 s Hintergrundposition, 75 s Hintergrundgröße, } Leider kann es nur ausgelöst werden, wenn die Taste gedrückt wird. Sobald die Maus angehoben wird, verschwindet es. Zu diesem Zeitpunkt müssen wir den Winkel ändern. Sie können es sich so vorstellen: Die Standardeinstellung ist divergierend. Wenn Sie darauf klicken, konvergiert es und wenn Sie es anheben, wird es in den vorherigen divergierenden Zustand zurückversetzt. Gleichzeitig müssen Sie den Übergangseffekt wie folgt abbrechen, wenn Sie darauf klicken .button::vor { /*…*/ Hintergrundposition: 5 % 44 %...;/*Diffusionszustand*/ Hintergrundgröße: 0 % 0 %; Übergang: Hintergrundposition 0,5 s Ein-/Ausblenden, Hintergrundgröße 0,75 s Ein-/Ausblenden; } .button:aktiv::vor { Übergang:0s;/**Hinweis zum Abbrechen des Übergangs**/ Hintergrundgröße: 10 % 10 %, 20 % 20 % …; Hintergrundposition: 18 % 40 %, 20 % 31 %, …; } Sie können sich diese Demo ansehen Warum brauchen wir Animation Die Implementierungsprinzipien von .button::vor{ /*…*/ Animation: Blasen gleiten 0,75 Sekunden vorwärts und verschwinden wieder; } .button:aktiv::vor { Animation: keine; /*Beachten Sie, dass die Animation hier abgebrochen werden kann*/ Hintergrundgröße: 0; } @keyframes Blasen { 0% { Hintergrundposition: 18 % 40 %, ...; } 50 % { Hintergrundposition: 10 % 44 %, ...; } 100 % { Hintergrundposition: 5 % 44 %, ...; Hintergrundgröße: 0 % 0 %; } } Den Quellcode können Sie hier einsehen. Der einzige Nachteil kann sein, dass die Initialisierungsanimation einmal ausgeführt wird. Zusammenfassung Oben wird eine reine CSS-Implementierung einer Partikelanimationsschaltfläche vorgestellt. Die Vorteile liegen auf der Hand. Sie können Es gibt noch einige Mängel. Beispielsweise ist die obige Positionierung sehr arbeitsintensiv. Es wird empfohlen, diese Funktionen nach Abschluss des Gesamtprojekts zu optimieren. Sie können auch versuchen, einige Visualisierungstools zu erstellen, um den Arbeitsaufwand zu verringern. Das ist alles. Zusammenfassen Oben sehen Sie den vom Editor eingeführten dynamischen CSS-Partikel-Button-Effekt. Ich hoffe, er ist für alle hilfreich. Wenn Sie Fragen haben, hinterlassen Sie mir bitte eine Nachricht und der Editor wird Ihnen rechtzeitig antworten. Ich möchte auch allen für ihre Unterstützung der Website 123WORDPRESS.COM danken! Wenn Sie diesen Artikel hilfreich finden, können Sie ihn gerne abdrucken und dabei bitte die Quelle angeben. Vielen Dank! |
<<: Detaillierte Erklärung der drei Möglichkeiten zum Umbrechen von Text in der El-Table-Kopfzeile
>>: Vereinfachen Sie die komplexe Website-Navigation
Ich habe bereits einige Nachforschungen zum Thema...
Inhaltsverzeichnis 1. Nachfrage 1. Nachfrage 2. S...
Im vorherigen Artikel haben wir mit Timeouts unte...
Inhaltsverzeichnis Stellen Sie httpd mit dem Quel...
1. Verschiedene CSS-Symbole Es gibt drei Möglichk...
xml <?xml version="1.0" encoding=&qu...
Wenn Sie das langsame Problem ein für alle Mal lö...
Inhaltsverzeichnis Vorwort Text 1. Globale Regist...
Guten Morgen allerseits, ich habe meinen Artikel ...
Hintergrund Navicat ist das beste MySQL-Visualisi...
Vorteile von Prepare Der Grund, warum Prepare SQL...
Beschränken Sie input Eingabefeld auf reine Zahle...
Quelle: http://www.ruoyi.vip/ Vue von „vue“ impor...
Dieser Artikel beschreibt, wie mysql5.6 mithilfe ...
MySQL-Leistungsoptimierung Die MySQL-Leistungsopt...