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

MySQL Null kann 5 Probleme verursachen (alle schwerwiegend)

Inhaltsverzeichnis 1. Zähldaten gehen verloren Lö...

Eine kurze Diskussion über mehrere aufgetretene Browserkompatibilitätsprobleme

Hintergrund Das Lösen von Browserkompatibilitätsp...

Installieren von MySQL 8.0.12 basierend auf Windows

Dieses Tutorial ist nur auf Windows-Systemen anwe...

Bestimmte Vorgänge der geplanten MySQL-Löschung von Sicherungsdaten

1|0 Hintergrund Aufgrund von Projektanforderungen...

Lösung zur Konvertierung in Inline-Styles in CSS (css-inline)

Sprechen Sie über die Szene E-Mail senden Einbett...

Lösen Sie das Problem der Verwendung des Swiper-Plugins in Vue

Da ich dieses Plugin beim Schreiben einer Demo ve...

Countdown-Effekt mit Javascript implementieren

Verwenden Sie Javascript, um den Countdown-Effekt...

Vue implementiert die Internationalisierung der Sprachumschaltung für Webseiten

1. Grundlegende Schritte 1: Installieren Sie yarn...

Detaillierte Analyse des Unterschieds zwischen Ref und Reactive in Vue3.0

Inhaltsverzeichnis Ref und Reaktiv Referenz Reakt...

WeChat-Applet implementiert Suchfunktion und springt zur Suchergebnisseite

Suchseite: search.wxml-Seite: <view class=&quo...

So verwenden Sie Docker+DevPi zum Erstellen einer lokalen PyPi-Quelle

Vor einiger Zeit musste ich für die Entwicklung h...

JavaScript-Implementierung eines Karussellbeispiels

In diesem Artikel wird der spezifische Code für J...