移动端图片模糊的根源是低分辨率图源在高DPR屏幕渲染导致物理像素不足,应使用srcset+sizes提供多倍图并声明响应式宽度,配合WebP/AVIF格式与CDN自动DPR适配实现清晰显示。
移动端图片模糊,多数是因为浏览器用低分辨率图源渲染在高像素密度屏幕(如 Retina、Android 高 PPI 屏)上,导致物理像素不足。解决核心是让设备自动加载匹配其 dpr(device pixel ratio) 的高清资源,srcset + sizes 是标准且兼容性良好的方案。
srcset 不是简单“多张图随便列”,而是告诉浏览器每张图的原始宽度(或 DPR 倍数),由它按当前视口宽度和设备像素比决定加载哪张。推荐按宽度描述(更可控):
banner.jpg(1x)、banner@2x.jpg(
2x)、banner@3x.jpg(3x)sizes 很关键:它预告诉浏览器“这张图在不同断点下会占多宽”,浏览器据此结合 DPR 计算需加载的最小合适图源CSS 的 background-image 配合 @media (-webkit-min-device-pixel-ratio: 2) 看似可行,但有明显缺陷:
的 loading="lazy" 和浏览器预解析都失效清晰度不只是“放大图”,更是“在带宽和质量间平衡”:
.webp 或 .avif 格式(同尺寸下比 JPG 清晰度更高、体积更小),可用 回退:?x-oss-process=image/resize,w_1080,m_lfit,dpr_2)实时生成适配图基本上就这些。不用 JS 动态换图,不依赖第三方库,纯 HTML/CSS 就能解决移动端图片模糊问题。关键是提供足够多的源、写对 sizes、选对格式。