直接输入 ! + Tab 即可生成标准 HTML5 结构,无需选模板;VS Code 无内置 HTML5 模板,! 是 Emmet 提供的最快最稳起手式,依赖语言模式为 HTML 且 Emmet 启用。

VS Code 里新建 HTML5 文件,直接写 html 还是选模板?
不用选——VS Code 本身不提供“HTML5 空模板”或“预设模板”选项。所谓“选模板”,其实是靠用户手动输入、插件补全,或者用 ! + Tab 触发 Emmet 的快捷片段。你看到的“空模板”只是自己建了个 .html 文件然后什么也没写;所谓“预设模板”,大概率是装了类似 Auto Close Tag 或 Emmet 的插件后自动补全出来的结构。
! + Tab 是最稳的 HTML5 起手式
在空白 .html 文件中,光标置于首行,输入 ! 后按 Tab(确保 Emmet 启用),VS Code 会立刻生成符合 HTML5 标准的最小可用结构:
Document
- 这个结构是 W3C 推荐的现代默认骨架,
lang和charset都已就位 - 不是“空模板”——它包含语义必需的
和 - 不是“预设业务模板”——没加 jQuery、Bootstrap 或任何框架代码,干净可控
- 如果按
html:5+ Tab,效果一样;但!更快、更不容易记错
装插件 ≠ 要模板,但关掉 Emmet 就真只剩白屏
Emmet 是 VS Code 默认启用的内置功能,但如果你禁用了它,或者在某些工作区配置里关掉了 emerald.emmet 相关设置,! 就不会展开——这时你面对的才是真正的“空文件”。这时候容易犯的错有:
- 手敲
却漏了,导致浏览器进怪异模式 - 写
但拼错成uft-8,中文变乱码 - 以为 `
html:5` 是命令,实际它是 Emmet 的缩写语法,离了 Emmet 就无效 - 从网上复制“HTML5 模板”粘贴进来,结果带了过时的
,新手根本看不出冗余
真要“预设”,也只该从项目需求出发,而非编辑器模板
所谓“预设模板”的价值,只在重复性高、约束明确的场景下成立,比如:
立即学习“前端免费学习笔记(深入)”;
- 团队统一要求每个页面必须含
入口 —— 可存为自定义代码片段(snippets),而非依赖插件模板 - 做静态博客,每次都要写相同的 Open Graph meta 标签 —— 可用 Emmet 自定义缩写,如
og:basic→ 展开为一组 - 用 Vite / Astro 构建项目 —— 模板逻辑应交给脚手架(
npm create vite@latest),不该塞进 VS Code 编辑器里
编辑器里的“模板”越少越好,越贴近标准越省心。真正容易被忽略的,是检查右下角状态栏是否显示 HTML(而非 Plain Text)——语言模式错了,Emmet 和语法高亮全失效,连 ! 都不会响应。










