记事本默认保存为ansi编码,编辑html易致中文乱码;必须通过“另存为”显式选utf-8(无bom),并用vs code等工具验证编码,避免反复退回到ansi。

记事本默认保存为 ANSI 编码,直接编辑 HTML 文件后中文会乱码——这不是 HTML 写错了,是编码没对上。
为什么用记事本改 HTML 编码容易出错
Windows 记事本没有“编码选择面板”,保存时只靠文件扩展名和内容启发式判断;遇到含中文的 HTML,它大概率选 ANSI(即系统本地编码,如 GBK),但现代浏览器默认按 UTF-8 解析,导致文字显示为方块或问号。
-
<meta charset="UTF-8">只告诉浏览器“请用 UTF-8 解析”,不改变文件实际存储编码 - 记事本里按 Ctrl+S 保存,若没手动指定编码,不会弹窗提示,直接覆盖为 ANSI
- 即使 HTML 头写了
charset=UTF-8,文件本身是 GBK 编码,浏览器照样乱码
在记事本中强制保存为 UTF-8 的唯一可靠操作
必须通过“另存为”对话框显式选择编码,且不能只依赖下拉菜单文字——不同 Windows 版本选项名称不一致:
- 打开记事本 → 粘贴或编辑好 HTML 内容 → 点击 文件 → 另存为
- 在“另存为”窗口底部找到
编码下拉框(不是“保存类型”) - 选择
UTF-8(Win10/11)或UTF-8 无签名(部分旧版显示为UTF-8,但实际带 BOM) - 务必检查文件名后缀是否仍为
.html或.htm,不要误存为.txt
⚠️ 注意:UTF-8 带签名(BOM) 在某些旧版服务器或构建工具中可能引发空白行或解析异常,日常静态页用 UTF-8(无 BOM)更稳妥。
将调研报告、方案对比、数据分析、需求梳理、会议纪要、设计说明、代码评审、学习笔记等任务产物输出为可在浏览器直接打开的单文件 HTML,替代 Markdown 作为最终交付物。Markdown 在信息密度、视觉清晰度和可分享性上已跟不上 AI 产物的丰富度,HTML 能同时承载排版、表格、SVG 等。
验证是否真保存成了 UTF-8
不能只看浏览器显示——因为浏览器可能自动纠错。真实验证方式只有两个:
- 用另一款编辑器(如 VS Code、Notepad++)打开该文件,右下角状态栏会明确显示当前编码,如
UTF-8或GBK - 在命令行运行:
file -i your-page.html(Linux/macOS)或用 PowerShell:Get-Content your-page.html -Encoding Byte | Select-Object -First 3—— 若前三个字节是239, 187, 191,说明带 BOM;否则是无 BOM UTF-8 或其他编码
BOM 不是必需的,<meta charset="UTF-8"> 足够让浏览器正确解码,所以优先选无 BOM 的 UTF-8。
真正麻烦的不是保存动作本身,而是记事本从不提醒你编码已变、也不记录历史编码——同一份文件反复用记事本打开→修改→保存,极易退回到 ANSI。建议把常用 HTML 文件用 VS Code 或 Notepad++ 打开编辑,它们默认 UTF-8 且界面明确标出编码状态。
前端入门到VUE实战笔记:立即使用
在学习笔记中,你将探索 前端 的入门与实战技巧!










