mengucapkan selamat tinggal kepada era gif! Amalan terbaik untuk animasi web yang cekap
menggunakan html
<video></video>
<video></video>
<video autoplay="" loop="" muted="" playsinline="" src="cats.mp4"></video>
Fail video terdiri daripada bekas dan codec video (termasuk audio, dan codec audio juga disertakan). Format kontena video biasa adalah MP4 dan Webm. Penyemak imbas perlu menyokong kedua -dua bekas dan codec untuk memainkan video.
Pelayar menyokong format video dalam pelbagai cara yang kompleks dan pelbagai, yang merupakan salah satu sebab mengapa video tertanam YouTube begitu popular. Mari lihat format video apa yang patut dipertimbangkan:
Format kontena:
MP4: Sejak pembebasannya pada tahun 2001, ia telah disokong oleh hampir semua pelayar.
H.264: Semua penyemak imbas menyokongnya.
Untuk mengambil kira penyemak imbas lama dan baru, anda boleh menggunakan unsur -unsur pelbagai
, mengutamakan penamaan fail sumber yang ideal, dan kemudian tambahkan alternatif pula:
<source></source>
<video autoplay="" loop="" muted="" playsinline=""> <source src="cats.webm" type="video/webm; codecs='vp9'"> <source src="cats.mp4" type="video/mp4; codecs='avc1.42E01E'"> </source></source></video>
codecs
Kebanyakan perisian penyuntingan video tidak menyokong eksport langsung format AV1 atau Webm, dan memerlukan penukaran menggunakan alat seperti FFMPEG:
Tukar GIF ke MP4:
ffmpeg -i yourSourceFile.mov -map_metadata -1 -c:a libopus -c:v librav1e -qp 80 -tile-columns 2 -tile-rows 2 -pix_fmt yuv420p -movflags +faststart -vf "scale=trunc(iw/2)*2:trunc(ih/2)*2" videoTitle.mp4
menggunakan video sebagai latar belakang dan superimposing elemen lain memerlukan kedudukan CSS:
ffmpeg -i cats.gif -map_metadata -1 -an opus -c:v librav1e -qp 80 -tile-columns 2 -tile-rows 2 -pix_fmt yuv420p -movflags +faststart -vf "scale=trunc(iw/2)*2:trunc(ih/2)*2" cats.mp4
Satu kelemahan unsur -unsur
.video-parent { position: relative; width: 100vw; height: 100vh; } .video-parent video { object-fit: cover; position: absolute; inset: 0; z-index: -1; width: 100%; height: 100%; }
<video></video>
Kelebihan gambar: Webp dan Avif
<img src="/static/imghw/default1.png" data-src="https://img.php.cn/" class="lazy" alt="GIFs Without the .gif: The Most Performant Image and Video Options Right Now ">
background-image: url("coolbackground.webp");
ia boleh digunakan (borang ditinggalkan, sama dengan bentuk asal) Format AVIF (yang dikeluarkan pada tahun 2019) adalah salah satu format imej terbaik pada masa ini, menukar GIF ke AVIF dapat mengurangkan bilangan bait dengan lebih daripada 90%: AVIF didasarkan pada codec video AV1 dan menyokong imej statik dan animasi. (borang ditinggalkan, sama dengan bentuk asal)
Menghormati Keutamaan Pengguna Semak peningkatan progresif Lottie Animation Library
Kesimpulan: Tidak ada penyelesaian terbaik mutlak, dan pilihan perlu ditimbang berdasarkan keperluan khusus dan keadaan projek. <img src="/static/imghw/default1.png" data-src="https://img.php.cn/" class="lazy" alt="GIFs Without the .gif: The Most Performant Image and Video Options Right Now ">
menggunakan animasi avif
<video autoplay="" loop="" muted="" playsinline="" src="cats.mp4"></video>
menggunakan
<img src="/static/imghw/default1.png" data-src="https://img.php.cn/" class="lazy" alt="GIFs Without the .gif: The Most Performant Image and Video Options Right Now ">
Ini dapat mencapai kesan seperti latar belakang video atau imej sempadan dalam safari:
<video autoplay="" loop="" muted="" playsinline="">
<source src="cats.webm" type="video/webm; codecs='vp9'">
<source src="cats.mp4" type="video/mp4; codecs='avc1.42E01E'">
</source></source></video>
Elemen video secara automatik menghormati tetapan autoplay pengguna dan "mengurangkan animasi" tetapan.
Sokongan untuk format AVIF dan Webp boleh dimatikan menggunakan tab Chrome Devtools '"Rendering" untuk menguji keserasian kod.
Lottie adalah perpustakaan animasi sumber terbuka yang mengeksport data animasi (fail JSON) dari selepas kesan dan menjadikannya ke laman web. Ia menyokong pelbagai platform dan menyediakan pilihan kawalan yang fleksibel seperti main balik, jeda, main balik terbalik, dan lain -lain.
ffmpeg -i yourSourceFile.mov -map_metadata -1 -c:a libopus -c:v librav1e -qp 80 -tile-columns 2 -tile-rows 2 -pix_fmt yuv420p -movflags +faststart -vf "scale=trunc(iw/2)*2:trunc(ih/2)*2" videoTitle.mp4
Atas ialah kandungan terperinci Gifs tanpa .gif: pilihan imej dan video yang paling prestasi sekarang. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!