必须设 lang="zh-tw" 且 meta charset="utf-8";因编码(utf-8)与语言(zh-tw)职责不同,big5/gbk 已被现代浏览器和部署平台弃用,且不支持 unicode 全集;lang 必须置于 html 标签上才生效,影响字体回退、读屏与 seo。

lang 属性必须设为 zh-TW,meta charset 仍用 UTF-8 —— 编码和语言是两件事,不能混为一谈。
为什么 meta charset="UTF-8" 不能换成 Big5 或 GBK
现代浏览器(Chrome、Firefox、Safari、Edge)已基本不支持 Big5 等旧编码的自动识别,且 HTML5 规范明确要求使用 UTF-8 作为默认编码。若强行写 charset=Big5:
- HTML 文件实际保存为 UTF-8 时,页面必然乱码(浏览器按 Big5 解码 UTF-8 字节流)
- 即使文件真用 Big5 保存,Vite/Webpack/Node.js dev server 默认发
Content-Type: text/html; charset=UTF-8,会覆盖 meta 导致失效 - GitHub Pages、Vercel、Netlify 等平台强制返回 UTF-8 响应头,
charset=Big5完全被忽略 -
Big5不支持简体字、emoji、大部分 Unicode 符号,协作与维护成本极高
lang="zh-TW" 必须加在 标签上
只写 <p lang="zh-TW">繁體中文</p> 没用,语义不成立。正确做法是:
<meta charset="UTF-8"><title>繁體網頁</title><p>這是一段繁體中文</p><div class="aritcle_card flexRow artxards">
<div class="artcardd flexRow">
<a class="aritcle_card_img" rel="nofollow" href="/xiazai/skill9263" title="Html2md"><img
src="https://img.php.cn/upload/skill/000/000/081/179249945220127.jpg" alt="Html2md" onerror="this.onerror='';this.src='/static/lhimages/moren/morentu.png'" ></a>
<div class="aritcle_card_info flexColumn">
<a rel="nofollow" href="/xiazai/skill9263" title="Html2md" class="overflowclass">Html2md</a>
<p class="overflowclass">使用 Readability + Turndown 将 HTML 页面转换为干净的、Agent 友好的 Markdown。去除导航栏、广告、页脚、Cookie 横幅、社交按钮等干扰元素。支持 URL...</p>
</div>
<a rel="nofollow" href="/xiazai/skill9263" title="Html2md" class="aritcle_card_btn flexRow flexcenter"><b></b><span>下载</span>
</a>
</div>
</div>
注意:
-
zh-TW是台湾地区繁体中文的标准值;zh-HK用于香港(用字习惯不同,如「裏」「衞」) - 不要写
zh或zh-tw(大小写敏感,小写无效) -
lang影响字体回退顺序、屏幕阅读器发音、搜索引擎语言识别,不是“可有可无”的装饰
繁体内容显示异常?先查这三处
常见现象:文字显示成方块、问号、或错乱成简体字形 —— 大概率不是编码问题,而是:
- VS Code 或其他编辑器保存文件时选了
UTF-8 with BOM:BOM(EF BB BF)会干扰<meta charset>解析,尤其在旧版 IE 或某些 Node.js 模板引擎中;应选纯UTF-8(无 BOM) - HTML 文件本身是 GBK 编码,但写了
<meta charset="UTF-8">:用xxd -l 4 yourfile.html查看开头字节,若为c8 e7类似值,说明是 GBK,需重存为 UTF-8 - 服务器响应头硬编码了
charset=ISO-8859-1(如某些 Nginx 配置漏配charset utf-8;):打开 DevTools → Network → 刷新 → 点 HTML 请求 → 查Response Headers中Content-Type是否含charset=utf-8
真正需要区分繁简的,是字形与用词,不是编码。用 UTF-8 存所有中文,靠 lang 和 CSS font-family 控制呈现,才是稳定可维护的做法。
前端入门到VUE实战笔记:立即使用
在学习笔记中,你将探索 前端 的入门与实战技巧!










