HTML i CSS · Middle · Pytanie 15 z 75
Dlaczego transform: translate() jest często lepszy niż zmiana left na elemencie z position: absolute w animacjach ruchu?
- ✓Poprawna odpowiedź:
translatenie zmienia układu, aleftprzelicza layout w każdej klatce - 2
leftw ogóle nie da się animować przeztransitionani@keyframes - 3
translateobsługuje procenty, alefttylko bezwzględne piksele
Wyjaśnienie
Przesunięcie przez transform nie wpływa na przepływ i nie wywołuje reflow, więc animacja jest płynniejsza. left da się animować, ale jest to droższe. Oba obsługują procenty, ale liczone inaczej: translate od własnego rozmiaru elementu (stąd trik centrowania translate(-50%, -50%)), left - od bloku zawierającego.