Peralihan CSS3: Adakah "peralihan: semua" Mempengaruhi Kelajuan Rendering?
Soalan:
Dalam CSS, menggunakan "peralihan: semua" menyasarkan semua sifat peralihan untuk berbilang elemen, sambil menentukan "peralihan: x" untuk setiap sifat menyasarkan sifat tertentu secara berasingan. Adakah penggunaan "peralihan: semua" menghalang kelajuan dan kelancaran animasi berbanding dengan menyasarkan sifat tertentu?
Jawapan:
Ya, menggunakan "peralihan: semua" sememangnya boleh memberi kesan negatif kepada prestasi persembahan. Apabila "peralihan: semua" digunakan, penyemak imbas mencari semua sifat peralihan yang berkenaan, termasuk yang mungkin tidak kelihatan kepada pengguna, seperti perubahan warna dan dimensi.
Pemprosesan tambahan ini boleh melambatkan animasi , kerana penyemak imbas perlu bukan sahaja mengira peralihan untuk sifat yang boleh dilihat tetapi juga menyemak peralihan yang mungkin tidak berlaku.
Contoh:
Dalam contoh berikut, menggunakan "peralihan: semua" boleh menyebabkan animasi yang tidak diperlukan apabila menukar tahap zum atau saiz fon:
/* With "transition: all" */ div, span, a { transition: all .2s ease-in; } /* With specific transitions */ div { transition: margin .2s ease-in; } span { transition: opacity .2s ease-in; } a { transition: background .2s ease-in; }
Cadangan:
Untuk mengoptimumkan prestasi animasi, ia biasanya disyorkan untuk mengelak daripada menggunakan "peralihan: semua" dan sebaliknya menyasarkan sifat peralihan tertentu. Ini bukan sahaja meningkatkan kelajuan pemaparan tetapi juga menghalang percikan animasi yang tidak diingini semasa pemuatan halaman, di mana gaya awal dan peralihan mungkin muncul secara berurutan.
Atas ialah kandungan terperinci Adakah 'peralihan: semua' dalam CSS3 Memperlahankan Animasi?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!