每日整理真实提问 356 个问题 · 726 个回答 需要系统性的技术文档?看 Shopify 技术百科 1000 篇 → 400-873-8117
已解决 提问于 2 个月前

LCP 元素是首屏大图,怎么优化

2 个回答 532 次浏览 性能与 Core Web Vitals 最后活跃 2 个月前
64

移动端 LCP 4.2 秒,PageSpeed 指出 LCP 元素是首页 banner 图,图片已经压缩过了。

陈
陈工提问者
Shopify 认证开发者 · 专注主题与 Liquid
2 个月前提问 · 已收到 2 个回答

2 个回答

已采纳 · 提问者确认解决
35

先把判断放在前面:LCP 由四段时间组成:TTFB、资源加载延迟、资源加载时长、渲染延迟。图片压缩只解决第二段时间。

1处理顺序

  1. 用 fetchpriority="high" 标记首屏图,让浏览器优先加载。
  2. 不要给首屏图加 loading="lazy",这会直接拖慢 LCP。
  3. 用 image_url 输出多尺寸 srcset,避免下载桌面大图。
  4. 检查 TTFB,超过 600ms 说明服务端或 CDN 有问题。
  5. 给图片容器设置固定宽高比,消除渲染延迟。
liquid
{%- comment -%} 首屏图:显式宽度 + 高优先级 + 多尺寸 {%- endcomment -%}
{{ section.settings.image
   | image_url: width: 1600
   | image_tag:
       widths: '400,600,800,1200,1600',
       sizes: '(max-width: 749px) 100vw, 1200px',
       fetchpriority: 'high',
       loading: 'eager',
       width: 1200, height: 700,
       alt: section.settings.image.alt }}
验收:移动端 LCP 降到 2.5 秒以内,CrUX 数据进入良好区间。
风 风格技术团队 回答于 2 个月前
14

最常见的错误是首屏图用了懒加载。这个改动只需要删一个属性,收益却是最大的。

泽 阿泽 · 前端工程师 · 2 个月前

你的处理方式是什么?

写下你实际验证过的步骤,比「我也有这个问题」有用得多。当前版本为静态展示,提交后会由团队整理并回复。

描述你遇到的现象、店铺环境(主题 / 套餐 / 应用)、已经试过哪些操作……
我要单独提问 工作日 10 分钟内回复,可直接加微信 fenggejishu