Verwenden Sie CSS, um einen kreisförmigen Welleneffekt zu erzielen

Verwenden Sie CSS, um einen kreisförmigen Welleneffekt zu erzielen

Auf Mobilgeräten sehe ich häufig kreisförmige Wellengrafiken, um die Menge anzuzeigen. Zuerst dachte ich, dieser Effekt könne nur mit Canvas erzeugt werden, aber später stellte ich fest, dass er auch mit CSS erzeugt werden kann.

Prinzip: Wir alle wissen, dass border-radius:50% setzen. Wenn er weniger als 50 % beträgt, wird es tatsächlich ein unregelmäßiger Kreis. Wir können diese Funktion ausnutzen und Pseudoklassen sowie Transformanimationen verwenden, um einen Welleneffekt zu erzielen.

Schauen wir uns zunächst das Wirkungsdiagramm an:

// CSS-Code

.Welle {
        Position: relativ; 
    Breite: 200px;
    Höhe: 200px;
    Hintergrund: @Farbe;
    Rand: 5px durchgezogen #76daff;
    Randradius: 50 %;
    Überlauf: versteckt;
}
.wave-box::vorher,
.wave-box::nach {
      Inhalt: '';
      Position: absolut;
      oben: 0;
      links: 50%;
      Breite: 400px;
      Höhe: 400px;
      Randradius: 45 %;
      -webkit-transform: übersetzen(-50 %, -70 %);
      transformieren: übersetzen (-50 %, -70 %);
      Hintergrund: rgba(255, 255, 255, 0,5);
      -webkit-animation: 10 s linear unendlich rotieren;
      Animation: 10 s linear unendlich rotieren;
      Z-Index: 10;
}
@keyframes drehen {
  50 % {
            -webkit-transform: verschieben (-50 %, -75 %) drehen (180 Grad);
            transformieren: verschieben (-50 %, -75 %) drehen (180 Grad);
  }
  100 % {
            -webkit-transform: verschieben(-50 %, -70 %) drehen(180 Grad);
            transformieren: verschieben (-50 %, -70 %) drehen (180 Grad);
  }
}
//Oder es ist bequemer, eine vorkompilierte Sprache zu verwenden, hier verwenden wir weniger
.Welle(@Breite; @Höhe; @Farbe) {
    Position: relativ; 
    Breite: @width;
    Höhe: @Höhe;
    Hintergrund: @Farbe;
    Rand: 5px durchgehende @Farbe;
    Randradius: 50 %;
    Überlauf: versteckt;
    &::vor,
    &::nach {
        Inhalt: '';
        Position: absolut;
        oben: 0;
        links: 50%;
        Breite: @width * 2;
        Höhe: @Höhe * 2;
        Randradius: 45 %;
        transformieren: übersetzen (-50 %, -70 %);
        Hintergrund: rgba(255,255,255,0,5);
        Animation: 10 s linear unendlich rotieren;
        Z-Index: 10;
    }
    &::nach {
        Randradius: 47 %;
        Hintergrund: rgba(255,255,255,0,5);
        Animation: 10 s linear drehen, -5 s unendlich;
        Z-Index: 20;
    }
}
//Rufen Sie .wave-box { auf.
    .wave(200px; 200px; #76daff);
}
<!-- Auf der Seite aufgerufen -->
<div Klasse="wave-box"></div>

Zusammenfassen

Oben habe ich Ihnen erklärt, wie Sie mit CSS kreisförmige Welleneffekte erzielen. Ich hoffe, es wird Ihnen helfen. Wenn Sie Fragen haben, hinterlassen Sie mir bitte eine Nachricht und ich werde Ihnen rechtzeitig antworten. Ich möchte auch allen für ihre Unterstützung der Website 123WORDPRESS.COM danken!

<<:  Eine kurze Diskussion über die Synchronisierungslösung zwischen MySQL und Redis Cache

>>:  Webstandards – Lernen Sie die Trennung von Struktur und Präsentation zu verstehen

Artikel empfehlen

Auswahl und Überlegungen zur MySQL-Datensicherungsmethode

Inhaltsverzeichnis 1. rsync, cp Dateien kopieren ...

Erstellen einer einfachen Game-Engine mit React Native

Inhaltsverzeichnis Einführung Erste Schritte Eine...

Beispielcode zur Implementierung eines reinen CSS-Popup-Menüs mit Transform

Vorwort Wenn Sie ein Topmenü erstellen, müssen Si...

Installationsschritte von MySQL unter Linux

1. Laden Sie die MySQL-Tar-Datei herunter: https:...

React realisiert den gesamten Prozess des Seitenwasserzeicheneffekts

Inhaltsverzeichnis Vorwort 1. Anwendungsbeispiele...

Erläuterung des HTML-Tabellenlayouts als Beispiel

Die Elemente in einem HTML-Dokument werden hinter...

Werfen wir einen Blick auf die Vorkompilierung von JavaScript (Zusammenfassung)

JS-Lauftrilogie js-Ausführungscode ist in drei Sc...

JavaScript-Kreisdiagrammbeispiel

ZeicheneffekteImplementierungscode JavaScript var...