我一直在努力将网站上的图像转换为Webp以提高性能。
通常,我使用以下HTML来显示它们:
<picture>
<source srcset="/img/about/image.webp" type="image/webp">
<source srcset="/img/about/image.jpg" type="image/jpeg">
<img src="/img/about/image.jpg" alt="alt text">
</picture>
使用Chrome的开发工具和pagespeed insights中的Lighthouse审核功能,我一直被告知尽管Webp格式的图像可用,但图像仍可以下一代格式提供。
此问题仅在某些图像上发生-其他正在使用webp版本。我对此的测试只是将鼠标悬停在开发工具中的img
标记src
上:
有问题的页面在显示结果之前使用Algolia的InstantsearchJS提取结果。这不同于使用与上面相同的HTML输出图像的其他页面,这可能是问题的原因(尽管我看不出原因)。
Chrome为何选择为页面上的部分但不是全部图像呈现Webp的任何明显原因?
无论这是否是解决方案,我都无法确定,但是在清除应用程序和Chrome中的大量缓存后,我在网站上保存(更新了)一条记录(博客文章)。这触发了对Algolia的调用,以更新记录,并且神奇地是,所有图像现在都报告为显示为webp ...