VS Code 中输入 ! + Tab 可快速生成 HTML5 骨架,但高频局部结构需自定义 snippet;必须配置 html.json、指定 "language": "html"、正确转义双引号和 &,且修改后须完全重启 VS Code 才生效。
VS Code 默认支持 ! + Tab 或 Enter 触发标准 HTML5 文档结构,这是最省事的起点。但它只是基础,真正提效的是你高频使用的局部结构——比如 <header></header>、<main></main>、带 Tailwind 类名的 <div class="container mx-auto">。这些不会被默认片段覆盖,必须自己配。
注意:html:5 也能触发相同骨架,但它是旧式 Emmet 语法,在某些 VS Code 版本中可能被禁用或响应延迟;! 更稳定,优先用它。
在 VS Code 中打开「文件 > 首选项 > 用户代码片段」,选 html.json(不是 javascript.json 或全局 snippets 文件夹)。如果错配成其他语言,哪怕内容完全正确,也不会在 .html 文件中生效。
关键配置项必须显式写出:
立即学习“前端免费学习笔记(深入)”;
"language": "html" —— 缺失则不触发"prefix": "h5-main" —— 触发词,避免用 main 这类通用名,防和 Emmet 冲突"body" 中闭合标签必须完整,VS Code 不会自动补全你没写的 </main>
$1$、$2$,不是 ${1},否则跳转失效<script> 或双引号的 snippet 容易解析失败直接复制网上模板进 body 字段,常因未转义导致整个 snippet 加载失败:比如 <script>console.log("ok")</script> 里的双引号会让 JSON 解析中断。
正确做法是:
"
< 和 > 不用实体化,但 & 必须写成 &
$1$ 占位,别硬编码 "My Site"
body 里写注释 —— JSON 不支持行内注释,会报错VS Code 对 snippet 的缓存很顽固。即使你改了 html.json 并保存,只要之前打开过任何 .html 文件,新片段就不会加载。
必须执行的操作链:
Code.exe 或 Electron 进程已结束).html 文件,输入 prefix 测试这个步骤绕不开。很多人卡在这一步,反复检查 JSON 格式却忽略进程残留,白白浪费调试时间。