我有一个网站,使用webp和jpg作为备用图像。在头部中,我有一个大尺寸的图片和一个手机用户用的小尺寸图片。
所以我一共有4个文件:
所以我一共有4个文件:
header-big.webp
header-small.webp
header-big.jpg
header-small.jpg
因为它在头部,所以我想要预加载图像,但只需要我需要的图像。对于小的和大的图像,我可以使用media属性进行预加载。
<link rel="preload" href="header-small.jpg" as="image" type="image/jpg" media="(max-width: 575px)">
<link rel="preload" href="header-small.webp" as="image" type="image/webp" media="(max-width: 575px)">
<link rel="preload" href="header-big.jpg" as="image" type="image/jpg" media="(min-width: 576px)">
<link rel="preload" href="header-big.webp" as="image" type="image/webp" media="(min-width: 576px)">
在此情况下,浏览器始终预加载两个文件,取决于其宽度,但仍然只使用其中一个。
是的,这是有道理的,因为jpg和webp都可以实现。所以当然浏览器会预加载两者。
但我能否说“如果支持webp,则预加载webp并且不预加载jpg”?
谢谢, Florian