2021-09-23 23:19:12
HTML5的loading属性用于实现图片和iframe的浏览器原生懒加载,通过设置loading="lazy"或loading="eager"控制资稿基信源加载时机,核心作用是延键轮迟非关键资源加载以提升页面性能。以下是具体用法和优化方案:
一、基础用法属性值:
loading="lazy":延迟加载,资源接近视口时触发(默认推荐值)。
loading="eager":立即加载(默认行为,通常无需显式设置)。
代码示例:
<!-- 图片懒加载 --><img src="image.jpg" loading="lazy" alt="示例图片"><!-- iframe懒加载 --><iframe src="video.html" loading="lazy"></iframe>
主流浏览器(Chrome、Firefox、Edge、Safari)已支持loading属性,但旧版本需兼容:
引入库:<script src="lazysizes.min.js" async></script>
修改HTML:<img data-src="image.jpg" class="lazyload" alt="兼容模式图片">

设置图片尺寸:
通过width和height属性预留空间,避免页面重排。<img src="image.jpg" loading="lazy" width="640" height="480" alt="带尺寸图片">
使用占位符:
加载前显示纯色、模糊图片或SVG,提升用户体验。
调整触发距离:
通过CSS或JS(如Lazysizes配置)调整懒加载阈值,控制资源提前或延后加载。
CDN加速:
将资源托管至CDN,减少服务器压力并提升加载速度。
图片格式优化:
使用WebP格式减小体积,配合srcset实现响应式加载:<img src="image.jpg" srcset="image-small.jpg 480w, image-large.jpg 1200w" sizes="(max-width: 600px) 480px, 1200px" loading="lazy" alt="响应式图片">

确保爬虫可访问:
避免纯JS懒加载导致爬虫无法抓取,可通过Google移动设备适合性测试验证。
结构化数据:
使用Schema标记图片内容,提升搜索排名:<img src="image.jpg" loading="lazy" alt="产品图" itemprop="image">
响应式设计:
结合srcset和sizes提供锋陪多尺寸图片,适应不同设备。
优先使用loading="lazy"。
兼容旧浏览器时采用Polyfill。
通过尺寸设置、占位符等优化用户体验。
兼顾SEO,确保资源可被搜索引擎索引。
正确使用loading属性可显著缩短页面加载时间,尤其适合图片或iframe较多的场景。