Heim > Web-Frontend > CSS-Tutorial > Wie kann ich eine konsistente Verzögerung zwischen CSS-Animationsiterationen hinzufügen?

Wie kann ich eine konsistente Verzögerung zwischen CSS-Animationsiterationen hinzufügen?

Susan Sarandon
Freigeben: 2024-12-07 18:43:14
Original
770 Leute haben es durchsucht

How Can I Add a Consistent Delay Between CSS Animation Iterations?

CSS-Animationsverzögerung: Verlängern der Pause zwischen Iterationen

Um eine sich wiederholende Animation mit einer konsistenten Verzögerung zwischen den Iterationen zu erreichen, statt einer solchen Berücksichtigen Sie die folgenden Methoden, wenn sie nur auf die erste Iteration angewendet werden:

1. Animationsdauer anpassen:

Eine Problemumgehung besteht darin, die gewünschte Verzögerung in die Animationsdauer einzubeziehen. Dazu gehört die Berechnung der tatsächlichen Dauer, die die Animation dauern sollte (einschließlich der Verzögerung), und das anschließende Festlegen der Eigenschaft „animation-duration“ entsprechend. Zum Beispiel:

@keyframes barshine {
  <!-- ...Animation definition here... -->
}
.progbar {
  animation: barshine 5s linear infinite;
  animation-delay: 1s;
}
Nach dem Login kopieren

In diesem Beispiel hat die Animation eine tatsächliche Dauer von 5 Sekunden mit einer Verzögerung von 1 Sekunde.

2. Verwenden Sie separate Animationen für die Verzögerung und den Effekt:

Ein anderer Ansatz besteht darin, separate Animationen für die Verzögerung und den eigentlichen Effekt zu erstellen. Diese Methode bietet mehr Flexibilität bei der Steuerung der Verzögerung unabhängig von der Animation selbst. So können Sie dies erreichen:

@keyframes shine {
  <!-- ...Animation definition for the effect here... -->
}
@keyframes delay {
  from {opacity: 0;}
  to {opacity: 1;}
}
.progbar {
  animation: delay 4s, shine 1s infinite;
}
Nach dem Login kopieren

In diesem Fall erhöht die „Verzögerungs“-Animation die Deckkraft schrittweise über 4 Sekunden von 0 auf 1, wodurch ein Einblendeffekt entsteht. Die „Glanz“-Animation läuft dann unbegrenzt und erzeugt den beabsichtigten schwungvollen Farbverlauf.

3. Verwenden Sie Herstellerpräfixe:

In einigen Fällen kann es zu Browserkompatibilitätsproblemen mit der Eigenschaft „animation-delay“ kommen. Um die Kompatibilität sicherzustellen, wird empfohlen, Herstellerpräfixe wie „-webkit-“ oder „-moz-“ zusammen mit der Standardeigenschaft anzugeben. Zum Beispiel:

@-webkit-keyframes barshine {
  <!-- ...Animation definition... -->
}
@-moz-keyframes barshine {
  <!-- ...Animation definition... -->
}
Nach dem Login kopieren

Zusätzlicher Hinweis:

Der bereitgestellte Code aus der Antwort mit „@-webkit-keyframes“ ist für ältere Versionen von WebKit geeignet. Es wird im Allgemeinen nicht empfohlen, sich in der modernen Entwicklung auf Herstellerpräfixe zu verlassen, es sei denn, dies ist aus Kompatibilitätsgründen erforderlich.

Das obige ist der detaillierte Inhalt vonWie kann ich eine konsistente Verzögerung zwischen CSS-Animationsiterationen hinzufügen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage