您如何为 html5 视频设置 webp 的海报(带有 jpg 的后备)?



给定以下视频元素:

<video class="Hero__video" width="1280" height="720" preload="true" autoplay="true" loop="loop" muted="muted" volume="0" poster="/assets/hero-cover.jpg">
<source src="/assets/hero.webm" type="video/webm">
<source src="/assets/hero.mp4" type="video/mp4">
</video>

有没有办法将海报设置为webp,并回退到jpg?

根据我的理解,唯一的解决方法是将元素放置在其绝对下方:

<picture class="Hero__poster">
<source srcset="/assets/hero-cover.webp" type="image/webp">
<source srcset="/assets/hero-cover.jpg" type="image/jpeg">
<img src="/assets/hero-cover.jpg">
</picture>

绝对元素是最简单的选择,否则你应该创建一个函数来确定是否支持 WebP。 这是一些可能对您有用的解决方案的链接

检测 WebP 支持

最新更新