控制<meta name="description">标签需按UTF-8字节数(中文2字节、英文1字节)严格限制在160字节内,建议75–80汉字;前60字符须含动词+具体对象,唯一静态注入<head>,避免动态生成或模板拼接。

控制页面在搜索结果中的摘要长度,核心是写好 <meta name="description"> 标签,但不能只看“字符数”,得按搜索引擎实际截断规则来卡位。
长度必须按字节数算,不是汉字个数
Google 截断依据是 UTF-8 字节数:每个中文、全角标点占 2 字节,英文/空格/半角标点占 1 字节。一段含 78 个汉字 + 标点的描述,很可能已超 160 字节,被截成“…”。
- 最可靠验证法:把 content 值粘贴进记事本 → 开启「显示所有字符」→ 删除换行 → 逐字计数(中英文、空格、标点全算 1)
- 中文为主页面,建议严格控制在 75–80 个汉字内(留出标点与空格余量)
- 别信 CMS 后台或编辑器右下角的“字数统计”,它们通常按 Unicode 码点计算,和 SERP 不一致
前 60 字决定是否被采用
移动端 SERP 常在 120 字符左右就截断,用户扫一眼就划走。前 60 字必须包含动词 + 具体对象,直击用户真实问题。
- ✅ 好例子:“修复 React Router v6 中 useNavigate 在异步回调报错的 3 种方法”
- ❌ 避免开头用“欢迎访问”“专业提供”“本网站”等泛化主语,信息密度低,Google 直接跳过
- 首句嵌入页面唯一强相关词,比如产品页写“不锈钢工业铰链|耐腐蚀承重 50kg|支持 OEM 定制”,比堆砌“铰链 五金 配件”有效得多
内容唯一且静态注入才生效
这个标签必须出现在初始 HTML 的 <head> 中,动态插入、写在 <body> 里、或靠 JS 补充,Googlebot 都不认。
立即学习“前端免费学习笔记(深入)”;
- 每页 description 必须唯一,不能靠模板变量拼成“{{ title }} | {{ site.name }}”
- SPA 页面(如 create-react-app)初始 HTML 的 content 不能为空或“加载中…”,否则抓到的就是空值
- SSR/SSG 框架(Next.js、Nuxt)需服务端传入 description 字段,不能只改前端模板
- 多语言站点必须为每个 hreflang 版本单独配置,JS 切换无效
超长或质量差会被 Google 主动替换
即使你写了 description,Google 也可能弃用它,转而从 <h1> 或正文前 150 字里挑一句更匹配搜索意图的句子。
- 触发忽略的常见原因:超 160 字节、含不可见字符(如 Word 复制来的零宽空格)、全角空格、emoji、»★• 等符号
- 避免复制粘贴正文前两行,缺乏行动导向;不如改成“掌握 link rel=canonical 设置方法,避免重复内容被降权”
- 关键词要自然嵌入,不是堆砌。例如“谷歌优化 SEO优化 排名提升”大概率被重写



















