Beispielcode zum Implementieren schöner Uhranimationseffekte mit CSS

Beispielcode zum Implementieren schöner Uhranimationseffekte mit CSS

Bildbeschreibung hier einfügen

Ich suche einen Job!!!

Vorbereitung:

Zunächst einmal basiert diese Animation auf der vorherigen Ladeanimation und der coolen Ladeanimation. Die Ideen sind dieselben, und in dieser Animation wurde eine Neuerung vorgenommen.

Wissenspunkte in der Vorschau:

  • Animationsrahmen
  • Hintergrundverlauf
  • Verwendung von var() und calc()
  • Flex-Layout-Szenario
  • Mehrere Animationsvorgänge
  • Verwenden verzögerter Animation

Start

Kerncodeanalyse

transformieren: drehen(calc(30deg * var(--i)));
        Transform-Ursprung: 0 250px;
        Animation: 5 s rotieren, linear, unendlich;
        Animationsverzögerung: calc(0,42 s * var(--i));

Gemäß dem auf HTML basierenden Stil erhalten wir jeden entsprechenden i-Wert und berechnen den Rotationsgrad der Box zu jedem Zeitpunkt. Gleichzeitig ändern wir ihren anfänglichen Rotationspunkt, da sich sonst jede Box nur um die Mitte dreht und zu einem Kreis wird.

Die Idee ist immer noch die gleiche wie beim Laden, dieses Mal wird jedoch das Größenverhältnis vergrößert.

Bildbeschreibung hier einfügen

Aufbau des HTML-Codes:

<div Klasse="Box">
            <div Klasse="Farbe" Stil="--i:1">1</div>
            <div Klasse="Farbe" Stil="--i:2">2</div>
            <div Klasse="Farbe" Stil="--i:3">3</div>
            <div Klasse="Farbe" Stil="--i:4">4</div>
            <div Klasse="Farbe" Stil="--i:5">5</div>
            <div Klasse="Farbe" Stil="--i:6">6</div>
            <div Klasse="Farbe" Stil="--i:7">7</div>
            <div Klasse="Farbe" Stil="--i:8">8</div>
            <div Klasse="Farbe" Stil="--i:9">9</div>
            <div Klasse = "Farbe" Stil = "--i:10">10</div>
            <div Klasse="Farbe" Stil="--i:11">11</div>
            <div Klasse="Farbe" Stil="--i:12">12</div>
            <div class="Stunden"></div>
            <div class="Minuten"></div>
        </div>

Weniger Code:

* {
  Rand: 0px;
  Polsterung: 0px;
  Box-Größe: Rahmenbox;
}

Körper {
  Hintergrund: -webkit-linear-gradient (links oben, rosa, rgb(90, 83, 83));
  Anzeige: Flex;
  Mindesthöhe: 100vh;
  Inhalt ausrichten: zentriert;
  Elemente ausrichten: zentrieren;

  Abschnitt {
    Höhe: 500px;
    Breite: 500px;
    .Kasten {
      Position: relativ;
      Höhe: 500px;
      Breite: 500px;
      Anzeige: Flex;
      Inhalt ausrichten: zentriert;
      Elemente ausrichten: zentrieren;
      Rand: 5px durchgezogen #e2adb6;
      Randradius: 50 %;
      // Rand: 2px durchgehend rot;
      &:hover .farbe {
        Animations-Wiedergabestatus: angehalten;
      }

      &::nach {
        Inhalt: "";
        Anzeige: Block;
        Höhe: 25px;
        Breite: 25px;
        Hintergrundfarbe: #000;
        Z-Index: 4;
        Randradius: 50 %;
      }

      @keyframes drehen {
        0%,
        50 % {
          Textschatten: keiner;
          Farbe: #000;
          transformieren: drehen(calc(30deg * var(--i))) skalieren(1);
        }

        50,1 %,
        100 % {
          Textschatten: 0 0 10px #000,
            0 0 15px #000;
          Farbe: #fff;
          transformieren: drehen(berechnen(30 Grad * var(--i))) skalieren(1,01);
        }
      }

      .Farbe {
        Position: absolut;
        oben: 0;
        Farbe: #f2f2f2;
        Deckkraft: .6;
        Schriftgröße: 20px;
        transformieren: drehen(calc(30deg * var(--i)));
        Transform-Ursprung: 0 250px;
        Zeilenhöhe: 50px;
        Animation: 5 s rotieren, linear, unendlich;
        Animationsverzögerung: calc(0,42 s * var(--i));
      }

      @keyframes ändern1 {
        0% {
          transformieren: verschiebeY(-50%) drehen(0 Grad);
          Transform-Ursprung: 0 100px;
        }

        100 % {
          transformieren: verschiebeY(-50%) drehen(360 Grad);
          Transform-Ursprung: 0 100px;
        }
      }

      @keyframes ändern2 {
        0% {
          transformieren: verschiebeY(-50 %) drehen(-30 Grad) drehen(0 Grad);
          Transform-Ursprung: 0 150px;
        }

        100 % {
          transformieren: verschiebeY(-50 %) drehen(-30 Grad) drehen(360 Grad);
          Transform-Ursprung: 0 150px;
        }
      }

      .Std {
        Position: absolut;
        oben: 40%;
        Breite: 5px;
        transformieren: verschiebeY(-50%);
        Höhe: 100px;
        Hintergrundfarbe: #f2f2f2;
        Animation: Änderung1 24 s linear unendlich;

        &::nach {
          Inhalt: "";
          Position: absolut;
          oben: 0;
          links: -10px;
          Breite: 20px;
          Höhe: 20px;
          Rahmen unten: 5px durchgezogen #f2f2f2;
          Rahmen rechts: 5px durchgezogen #f2f2f2;
          transformieren: drehen (-135 Grad);
        }
      }

      .Minuten {
        Position: absolut;
        oben: 36 %;
        Breite: 3px;
        Höhe: 150px;
        Hintergrundfarbe: #000;
        transformieren: verschiebeY(-50%) drehen(-30 Grad);
        Transform-Ursprung: 0 150px;
        Animation: Änderung2 2s linear unendlich;

        &::nach {
          Inhalt: "";
          Position: absolut;
          oben: 0;
          links: -10px;
          // Anzeige: Block;
          Breite: 20px;
          Höhe: 20px;
          Rahmen unten: 3px durchgezogen #000;
          Rahmen rechts: 3px durchgezogen #000;
          transformieren: drehen (-135 Grad);
        }
      }
    }
  }
}

Damit ist dieser Artikel über Beispielcode zur Implementierung schöner Uhranimationseffekte mit CSS abgeschlossen. Weitere relevante Inhalte zu CSS-Uhranimationen finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den verwandten Artikeln weiter unten. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen!

<<:  Detaillierte Analyse des Befehls chmod zum Ändern der Dateiberechtigungen unter Linux

>>:  Häufige JavaScript-Speicherfehler und Lösungen

Artikel empfehlen

MySQL-Lernhinweise: Daten-Engine

Sehen Sie sich die von der aktuellen Datenbank un...

Syntax-Alias-Problem basierend auf Löschen in MySQL

Inhaltsverzeichnis MySQL-Löschsyntax-Aliasproblem...

7 interessante Möglichkeiten, versteckte Elemente in CSS zu erreichen

Vorwort Die Ähnlichkeiten und Unterschiede zwisch...

So führen Sie PostgreSQL mit Docker aus

1. Installieren Sie Docker. Referenz-URL: Docker-...

Detaillierte Anweisungen zur Installation von SuPHP auf CentOS 7.2

Standardmäßig wird PHP unter CentOS 7 als Apache ...

Details zur MySQL-Transaktionsisolationsebene

serializable Serialisierung (kein Problem) Transa...

Hinzufügen und Löschen von Tabelleninformationen mit Javascript

Erste Schritte mit JavaScript JavaScript ist eine...

Wie Sie React forwardRef verwenden und was Sie beachten müssen

Bisher konnte react.forwardRef nicht auf höherwer...

JavaScript-Lösung für die Setinterval-Verzögerung um eine Sekunde

Bei Verwendung von setinterval wird festgestellt,...