必须放在中,因为浏览器需在渲染前确定页面标题;写在中会被忽略或强制迁移,导致seo和书签异常,且仅支持纯文本,禁止html标签与模板语法。

页面标题必须用 <title></title> 标签写在 里,其他地方加都无效。
为什么 <title></title> 必须放在 中
浏览器解析 HTML 是顺序执行的,<title></title> 的作用是告诉浏览器“这个页面叫什么”,它需要在页面渲染前就确定。如果写在 里,多数浏览器会忽略或强行挪到 ,但行为不可靠,SEO 和书签也会出问题。
- 写在
开头?—— 无效,Chrome/Firefox 会静默修复,但爬虫可能不认 - 用 JavaScript 动态改
document.title?—— 可以,但初始标题仍需<title></title>提供 - 多个
<title></title>?—— 后面的会覆盖前面的,但属于 HTML 错误,W3C 验证不通过
<title></title> 里不能写什么
它只接受纯文本,所有 HTML 标签、实体以外的特殊字符、JS 表达式都会被当作文本原样显示,甚至破坏页面结构。
传媒企业网站系统使用热腾CMS(RTCMS),根据网站板块定制的栏目,如果修改栏目,需要修改模板相应的标签。站点内容均可在后台网站基本设置中添加。全站可生成HTML,安装默认动态浏览。并可以独立设置SEO标题、关键字、描述信息。源码包中带有少量测试数据,安装时可选择演示安装或全新安装。如果全新安装,后台内容充实后,首页才能完全显示出来。(全新安装后可以删除演示数据用到的图片,目录在https://
- 别写
<strong>首页</strong>—— 浏览器标签页会真的显示“<strong>首页</strong>” - 别写
或{{ title }}—— 服务端没渲染时,用户看到的就是字面量 - 中文、emoji、破折号(—)、版权符(©)可以,但避免全角空格和不可见 Unicode 字符
动态设置标题的常见错误
单页应用(SPA)常依赖 JS 更新标题,但容易漏掉关键环节。
立即学习“前端免费学习笔记(深入)”;
- 只改
document.title,没同步更新<title></title>的 innerHTML?—— SSR 或爬虫看不到新标题 - 路由切换后立即改标题,但页面还没加载完?—— 某些浏览器(如旧版 Safari)可能丢弃这次修改
- 用
setTimeout延迟设标题?—— 不稳定,应监听history.pushState或使用框架的生命周期钩子
最稳妥的做法:服务端输出正确的初始 <title></title>,前端路由变化时同步调用 document.title = '新标题',并确保首屏 HTML 已包含语义化内容。标题长度控制在 50 字符内,过长会被截断,且影响搜索结果展示。










