Implementierung des CSS-Ladeeffekts Pac-Man

Implementierung des CSS-Ladeeffekts Pac-Man
emmm, der Name ist nur eine zufällige Vermutung 2333

Vorwort

Dies ist eine CSS-Demo zum Üben. Wenn etwas daran falsch ist, korrigieren Sie mich bitte. Ich werde es unvoreingenommen akzeptieren. juhu

HTML-Layout

  <div Klasse="Container">
    <div Klasse="wird geladen">
      <div Klasse="essen"></div>
      <div Klasse="laden"></div>
      <div Klasse="laden"></div>
      <div Klasse="laden"></div>
    </div>
  </div>

CSS-Stile

Der hauptsächlich verwendete Effekt ist eine Animation, die die Winkelposition von Elementen kontinuierlich steuert, um eine Ladedemo ähnlich wie Pac-Man zu erreichen.
    Körper {
      Rand: 0;
      Polsterung: 0;
      Hintergrund: #fff;
    }
    .container {
      Position: absolut;
      oben: 50 %;
      links: 50%;
      transformieren: übersetzen(-50 %, -50 %);
    }
    .wird geladen {
      Position: relativ;
      Breite: 200px;
      Höhe: 50px;
      Anzeige: Flex;
    }
    .essen {
      Position: relativ;
      Breite: 50px;
      Höhe: 50px;
      links: 0;
      Farbe: #ff0000;
      Animation: Eat-Animate 2,4 s, unendliches Ein- und Aussteigen;
    }
    @keyframes essen-animieren {
      100 % {
        links: 150px;
      }
    }
    .essen::vorher {
      Inhalt: '';
      Position: absolut;
      Breite: 0;
      Höhe: 0;
      Breite: 50px;
      Höhe: 25px;
      oben: 0;
      Rahmenradius: 50px 50px 0 0;
      Hintergrund: aktuelle Farbe;
      transformieren: drehen (-30 Grad);
      Animation: Eat-Top, 2,4 s, unendliches Ein- und Aussteigen;
    }
    @keyframes essen-oben {
      20% {
        transformieren: drehen (-30 Grad);
      }
      35 % {
        transformieren: drehen (0 Grad);
      }
      45 % {
        transformieren: drehen (-30 Grad);
      }
      60 % {
        transformieren: drehen (0 Grad);
      }
      70 % {
        transformieren: drehen (-30 Grad);
      }
      85 % {
        transformieren: drehen (0 Grad);
      }
      100 % {
        transformieren: drehen (0 Grad);
      }
    }
    .essen::nach {
      Inhalt: '';
      Position: absolut;
      Breite: 0;
      Höhe: 0;
      Breite: 50px;
      Höhe: 25px;
      unten: 0;
      Rahmenradius: 0 0 50px 50px;
      Hintergrund: aktuelle Farbe;
      transformieren: drehen (30 Grad);
      Animation: Eat-Bottom, 2,4 s, unendliches Ein- und Aussteigen;
    }
    @keyframes essen-unten {
      20% {
        transformieren: drehen (30 Grad);
      }
      35 % {
        transformieren: drehen (0 Grad);
      }
      45 % {
        transformieren: drehen (30 Grad);
      }
      60 % {
        transformieren: drehen (0 Grad);
      }
      70 % {
        transformieren: drehen (30 Grad);
      }
      85 % {
        transformieren: drehen (0 Grad);
      }
      100 % {
        transformieren: drehen (0 Grad);
      }
    }
    .laden {
      Position: relativ;
      Breite: 30px;
      Höhe: 30px;
      Rand: 10px;
      Farbe: #e47272;
      Randradius: 50 %;
      Hintergrund: aktuelle Farbe;
    }
    .load:n-tes-Kind(2) {
      Animation: Laden1 2,4 s linear unendlich;
      transformieren: Skalierung(1);
    }
    @keyframes laden1 {
      35 % {
        transformieren: Skalierung(0);
      }
      100 % {
        transformieren: Skalierung(0);
      }
    }
    .load:n-tes-Kind(3) {
      Animation: Laden2 2,4 s linear unendlich;
      transformieren: Skalierung(1);
    }
    @keyframes laden2 {
      30% {
        transformieren: Skalierung(1);
      }
      58 %
        transformieren: Skalierung(0);
      }
      100 % {
        transformieren: Skalierung(0);
      }
    }
    .load:n-tes-Kind(4) {
      Animation: Laden3 2,4 s linear unendlich;
      transformieren: Skalierung(1);
    }
    @keyframes laden3 {
      60 % {
        transformieren: Skalierung(1);
      }
      80 % {
        transformieren: Skalierung(0);
      }
      100 % {
        transformieren: Skalierung(0);
      }
    }

Vorschau

Das Gesamtbild ist wie oben dargestellt. Wenn Sie es nicht verstehen, können Sie gerne direkt antworten ...

Wird derzeit unter https://github.com/ajycc20/easy-css-layout aktualisiert, Ihre Kommentare sind willkommen! ! !

Außerdem wäre es besser, einen Stern zu haben (hhhh Flucht

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird.

<<:  【Webdesign】Teilen Sie E-WebTemplates exquisite Vorlagen für ausländische Webseiten (FLASH + PSD-Quelldatei + HTML).

>>:  So beheben Sie die durch MySQL DDL verursachte Synchronisierungsverzögerung

Artikel empfehlen

Implementierungsbeispiel eines Videoplayers basierend auf Vue

Wenn der vorhandene Videoplayer die Anforderungen...

Implementierungscode des JQuery-Schrittfortschrittsachsen-Plug-Ins

Jeden Tag ein jQuery-Plugin - Schritt-Fortschritt...

So erstellen Sie YUM in einer Centos7-Umgebung

1. Geben Sie die Konfigurationsdatei der Yum-Quel...

Grundlegende Ideen und Codes zur Implementierung von Videoplayern in Browsern

Inhaltsverzeichnis Vorwort Zusammenfassung der Au...

Docker-Port-Mapping und externe Unzugänglichkeitsprobleme

Der Docker-Container stellt Dienste bereit und la...

Tutorial zur MySQL-Optimierung: Große Paging-Abfrage

Inhaltsverzeichnis Hintergrund LIMIT-Optimierung ...

So ändern Sie das Root-Passwort von MySQL in Docker

Der erste Schritt besteht darin, einen MySQL-Cont...

Zabbix' PSK-Verschlüsselung kombiniert mit zabbix_get-Wert

Seit Zabbix Version 3.0 wird verschlüsselte Kommu...