如何延迟加载使用CSS获取的图像?

如何延迟加载使用CSS获取的图像?,css,Css,首先,我在我的主页上发现的问题是,这些图片让我的生活变得迟钝。我发现这解释了如何延迟加载图像,对我来说这是我问题的解决方案 但是,所有示例都与使用HTML获取的图像相关。我使用CSS从本地文件中获取图像。我如何在主页中使用CSS惰性加载图像 使用CSS获取图像的示例 background: -webkit-gradient(linear, left top, left bottom, from(rgba(50, 58, 82, 0.8)), to(rgba(50, 58, 82, 0.8))),

首先,我在我的主页上发现的问题是,这些图片让我的生活变得迟钝。我发现这解释了如何延迟加载图像,对我来说这是我问题的解决方案

但是,所有示例都与使用HTML获取的图像相关。我使用CSS从本地文件中获取图像。我如何在主页中使用CSS惰性加载图像

使用CSS获取图像的示例

background: -webkit-gradient(linear, left top, left bottom, from(rgba(50, 58, 82, 0.8)), to(rgba(50, 58, 82, 0.8))), url(../images/world.jpeg);
background: linear-gradient(to bottom, rgba(50, 58, 82, 0.8), rgba(50, 58, 82, 0.8)), url(../images/world.jpeg);

如果你需要查看我的任何网站代码,这里是我的

我想你问错问题了。图像正在减慢您的站点速度,因此您不必担心花哨的加载技术,您应该问的是如何使图像加载更快

我看了你的页面。您的背景图像大小几乎为7 Mb。它是6000像素宽。没有必要有这么大的形象。我下载了它,并使用Gimp将其扩展到3000px宽,从而将文件大小削减到2MB。通过一个图像压缩程序运行它,将其压缩到800KB。甚至3000像素宽也可能比需要的宽一点

您还有其他一些可以剪切的大图像。例如,如果这些徽标仅以230px的宽度显示,则不需要1000+px的宽度

与其尝试延迟加载,不如回到如何快速加载图像这一更基本的问题上来

以下是一些想法:

  • 了解srcset属性。它允许浏览器根据您提供的不同大小以及浏览器提供的其他信息(如用户首选项和可用带宽)选择最佳图像大小
  • 将图像缩放到多个不同的大小,然后使用srcset让浏览器加载正确的大小
  • 您的背景图像可能会使用CSS媒体查询根据屏幕大小选择最佳图像大小
  • 使用图像压缩程序缩小图像。这里有一个很好的例子:
  • 如果你做了所有这些事情,但仍然太慢,那么你可以开始变得更有创造力,但在需要之前不要把事情复杂化