Podczas pracy nad funkcją powiększania obrazu CSS napotkałem problem z wydajnością w mobilnej przeglądarce Chrome.Dlaczego opóźnienia CSS są opóźnione w mobilnej wersji Chrome?
Opis: Gdy próbuję przeskalować obraz, dodając CSS przekształcić się bezpośrednio do obrazu wszystko działa dobrze. Zmiana powiększenia jest gładka jak masło z 60fps (JSFiddle).
<img src="http://placehold.it/1000x1500" style="transform:matrix(2, 0, 0, 2, 0, 0);" />
Problem: Ale jeśli mogę zawinąć obraz w pojemniku div i starają się przekształcić pojemnik przejście jest bardzo laggy (JSFiddle). Przejście rozpoczyna się z dużym opóźnieniem i nie jest płynne. Wygląda na to, że jest to tylko mobilny problem z Chrome, ponieważ nie dzieje się to w innych przeglądarkach, takich jak Firefox na Androida, tylko na moim urządzeniu mobilnym (Nexus 5) i niektórych innych urządzeniach z Androidem.
<div style="transform:matrix(2, 0, 0, 2, 0, 0);">
<img src="http://placehold.it/1000x1500" />
</div>
Czy ktoś wie co jest nie tak z CSS lub struktury HTML?
Myślę, że dowiedziałem się, jaki jest problem. Wygląda na to, że jest to ogólny problem Chrome, a nie tylko problem z Chrome na komórki. Jeśli zaznaczysz to [przykład] (http://johann-ulbrich.de/zoom/2016-10-28/), zobaczysz, że powiększanie (zwłaszcza pomniejszanie) nie jest po prostu opóźnione w mobilnej przeglądarce Chrome. Jeśli jest duży obraz, a jego części nie ma w widoku, przeglądarka nie ma całego obrazu w swojej wewnętrznej pamięci podręcznej rasteryzacji. Dlatego obraz będzie przetwarzany w razie potrzeby. – Johann