Den will-change
eiendom i CSS optimaliserer animasjoner ved å la leseren vet hvilke egenskaper og elementer er bare om å bli manipulert, og potensielt øke ytelsen til den aktuelle operasjonen.
Denne egenskapen har fire verdier:
auto
: standard nettleseroptimaliseringer blir brukt.scroll-position
: indikerer at elementets rulleposisjon vil bli animert en gang i nær fremtid, slik at nettleseren vil forberede seg på innhold som ikke er synlig i rullevinduet til et element.contents
: det forventes at innholdet i et element endres, slik at nettleseren ikke cache dette elementets innhold.: hvilken som helst brukerdefinert egenskap som
transform
elleropacity
som vi ønskerwill-change
å bli brukt på.
Vi kan informere nettleseren om at en endring er i ferd med å finne sted på transform
eiendommen slik:
.element ( will-change: transform; )
Eller hvis vi vil erklære flere verdier, kan vi bruke en kommaadskilt liste som:
.element ( will-change: transform, opacity; )
Det er viktig å ikke overbruke will-change
eiendommen, siden det faktisk kan føre til at siden blir mindre effektiv (merk at det ikke er en all
verdi for denne eiendommen av en god grunn). Som et resultat anbefaler MDN at eiendommen brukes som en siste utvei for eksisterende ytelsesproblemer i stedet for de du forventer kan skje. Og når du bruker den, anbefales det å bytte will-change
rett før et element eller en eiendom endres, og deretter slå den av igjen kort tid etter at prosessen er ferdig.
Nettleserstøtte
Disse nettleserstøttedataene er fra Caniuse, som har flere detaljer. Et tall indikerer at nettleseren støtter funksjonen i den versjonen og oppover.
Desktop
Chrome | Firefox | DVS | Kant | Safari |
---|---|---|---|---|
36 | 36 | Nei | 79 | 9.1 |
Mobil / nettbrett
Android Chrome | Android Firefox | Android | iOS Safari |
---|---|---|---|
88 | 85 | 81 | 9.3 |