lang="zh-tw"是合法且推荐的写法,表示中文(台湾),须设在根元素上;局部用lang="zh-cn"可处理简体引文,需验证源码生效。

lang="zh-TW" 是合法且推荐的写法
HTML 的 lang 属性支持 IETF BCP 47 语言标签规范,zh-TW 是标准写法,表示“中文(台湾)”,浏览器、屏幕阅读器和搜索引擎都识别它。不要用 zh_TW、zh_tw 或 zh-TW-chinese 这类非标准变体。
设置位置:必须加在 根元素上
只在 开始标签中设置才有效,局部设置(如某段 <p lang="zh-TW"></p>)仅影响该元素及其子元素,无法声明整页语言。
正确示例:
常见错误:
-
——tw不是语言子标签,无效 -
—— 虽语法合法(明确繁体汉字+台湾),但冗余;zh-TW已隐含使用繁体字,多数场景无需额外指定Hant - 漏写
lang或只在上设置 —— 对 SEO 和辅助技术基本无效
与简体中文 zh-CN 混用时的注意事项
一个页面只能有一个根 lang 值。如果页面主体是台湾繁体,但某段引文是大陆简体(如直接引用内地政策原文),应局部覆盖:
<p>本方案依台湾《个人资料保护法》制定。</p><br><p lang="zh-CN">依据《中华人民共和国个人信息保护法》第三条……</p>
这样屏幕阅读器会切换发音习惯(如“的”读作 de 还是 dí),浏览器翻译插件也更可能准确识别语境。
关键点:
- 不要用 CSS 的
font-family或direction替代lang—— 它们不传递语言语义 -
zh-TW不自动触发字体切换,需配合 CSS 如font-family: "PingFang TC", "Heiti TC", sans-serif; - 某些老旧 CMS 或静态生成器会强制覆写
lang,需检查模板输出后的实际 HTML 源码
验证是否生效
最直接的方式是打开浏览器开发者工具,选中 元素,确认属性值确实是 lang="zh-TW"。进一步验证可:
- 用 VoiceOver 或 NVDA 朗读页面,听是否采用台湾口音/用词(如“软体”而非“软件”)
- 在 Chrome 中右键 → “翻译成英文”,观察是否默认识别为“中文(繁体,台湾)”
- 用 Lighthouse 审计,检查“
html元素有lang属性”这一项是否通过
容易被忽略的是:服务端渲染(SSR)或 CDN 缓存可能导致 lang 值未及时更新,上线后务必手动查看源代码,而不是只信前端框架的 JSX 模板。
前端入门到VUE实战笔记:立即使用
在学习笔记中,你将探索 前端 的入门与实战技巧!











