You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Next.js使用Image组件渲染出空alt标签的原因及解决方案问询

问题原因

那个无alt属性的img是Next.js旧版next/image组件自动生成的布局占位图,本质是base64编码的空白svg,作用是提前撑开图片容器的宽高,避免图片加载过程中出现页面布局偏移(CLS),提升页面性能体验。
它默认携带aria-hidden="true"和role="presentation"两个无障碍属性,本身就是为了告知搜索引擎、屏幕阅读器该元素为纯装饰性元素,不需要被识别和解析,空alt属性是符合W3C无障碍规范的设计。
SEO Minion的报错属于工具的机械检测误判,它只校验了alt属性是否为空,没有识别配套的无障碍属性,实际上这个占位图不会对你的站点SEO产生负面影响,Google等搜索引擎的爬虫可以正确识别aria-hidden属性,不会将该占位图计入有效内容图片。

解决方案

你可以根据自己的需求选择对应处理方式:

  • 直接忽略误报:如果你的站点SEO核心诉求是满足搜索引擎收录规则,完全可以忽略该提示,不会产生实际负面影响。
  • 升级新版Image组件:将Next.js升级到13及以上版本,使用App Router下的新版next/image组件,新版已经重构了布局逻辑,不再生成额外的占位img标签,从根源上消除该检测警告。
  • 旧版本适配优化:如果你仍在使用Next.js 12及以下的Page Router,可以在next.config.js中开启配置:
module.exports = {
  experimental: {
    images: {
      layoutRaw: true
    }
  }
}

之后在调用Image组件时添加layout="raw"属性即可取消占位图生成,不过该方案需要你自行定义图片的宽高样式,避免出现布局偏移问题。

内容的提问来源于stack exchange,提问作者quikina

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 00:12:00