Heim >Web-Frontend >CSS-Tutorial >Wie kann ich flüssige CSS-Verlaufsanimationen ohne abrupte Positionsänderungen erstellen?
Verläufe mit CSS animieren
Bestimmte Szenarien können Schwierigkeiten bei der Erstellung nahtloser Verlaufsanimationen bereiten. Ein bemerkenswertes Problem sind die abrupten Positionsänderungen während der Animation. Der bereitgestellte Code veranschaulicht dieses Problem:
.animated { animation: gra 5s infinite; animation-direction: reverse; } @keyframes gra { 0% { background: linear-gradient(135deg, #ff670f 0%, #ff670f 21%, #ffffff 56%, #0eea57 88%); } 50% { background: linear-gradient(135deg, #ff670f 0%, #ff670f 10%, #ffffff 40%, #0eea57 60%); } 100% { background: linear-gradient(135deg, #ff670f 0%, #ff670f 5%, #ffffff 10%, #0eea57 40%); } }
Lösung
Um dieses Problem zu beheben, können Sie die Hintergrundpositionseigenschaft von CSS in Verbindung mit Keyframes verwenden, um eine Glättung zu erstellen Animation. Betrachten Sie den folgenden Code:
#gradient { background: linear-gradient(130deg, #ff7e00, #ffffff, #5cff00); background-size: 200% 200%; -webkit-animation: Animation 5s ease infinite; -moz-animation: Animation 5s ease infinite; animation: Animation 5s ease infinite; } @-webkit-keyframes Animation { 0%{background-position:10% 0%} 50%{background-position:91% 100%} 100%{background-position:10% 0%} } @-moz-keyframes Animation { 0%{background-position:10% 0%} 50%{background-position:91% 100%} 100%{background-position:10% 0%} } @keyframes Animation { 0%{background-position:10% 0%} 50%{background-position:91% 100%} 100%{background-position:10% 0%} }
In diesem Code:
Das obige ist der detaillierte Inhalt vonWie kann ich flüssige CSS-Verlaufsanimationen ohne abrupte Positionsänderungen erstellen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!