Die will-change
Eigenschaft in CSS optimiert Animationen, indem der Browser weiß, welche Eigenschaften und Elemente gerade bearbeitet werden sollen, wodurch möglicherweise die Leistung dieser bestimmten Operation erhöht wird.
Diese Eigenschaft hat vier Werte:
auto
: Standard-Browser-Optimierungen werden angewendet.scroll-position
: Gibt an, dass die Bildlaufposition des Elements in naher Zukunft animiert wird, damit sich der Browser auf Inhalte vorbereitet, die im Bildlauffenster eines Elements nicht sichtbar sind.contents
: Es wird erwartet, dass sich der Inhalt eines Elements ändert, damit der Browser den Inhalt dieses Elements nicht zwischenspeichert.: Jede benutzerdefinierte Eigenschaft wie
transform
oder ,opacity
dass wir wollen ,will-change
um angewendet werden.
Wir können den Browser darüber informieren, dass eine Änderung an der transform
Immobilie bevorsteht:
.element ( will-change: transform; )
Wenn wir mehrere Werte deklarieren möchten, können wir eine durch Kommas getrennte Liste verwenden, z.
.element ( will-change: transform, opacity; )
Es ist jedoch wichtig, die will-change
Eigenschaft nicht zu stark zu verwenden, da dies dazu führen kann, dass die Seite weniger leistungsfähig ist (beachten Sie, dass all
für diese Eigenschaft aus gutem Grund kein Wert vorhanden ist ). Aus diesem Grund empfiehlt MDN, die Eigenschaft als letzten Ausweg für vorhandene Leistungsprobleme zu verwenden, anstatt solche, von denen Sie erwarten, dass sie auftreten könnten. Wenn Sie es verwenden, wird empfohlen, es will-change
kurz vor dem Ändern eines Elements oder einer Eigenschaft umzuschalten und es kurz nach Abschluss des Vorgangs wieder auszuschalten.
Browser-Unterstützung
Diese Browser-Unterstützungsdaten stammen von Caniuse, das detaillierter ist. Eine Zahl gibt an, dass der Browser die Funktion ab dieser Version unterstützt.
Desktop
Chrom | Feuerfuchs | IE | Kante | Safari |
---|---|---|---|---|
36 | 36 | Nein | 79 | 9.1 |
Handy / Tablet
Android Chrome | Android Firefox | Android | iOS Safari |
---|---|---|---|
88 | 85 | 81 | 9.3 |