VS Code HTML5标签补全失效需依次检查:文件语言模式是否为HTML;emmet.triggerExpansionOnTab是否为true;emmet.includeLanguages是否包含”html”:”html”;自定义代码片段可实现input自动带type属性;img缺alt属规范限制,需插件辅助提示。
VS Code 写 HTML5 时标签补全不生效?先检查这个设置
默认情况下 VS Code 对 .html 文件的 HTML5 标签补全是开启的,但如果你新建的是无后缀文件、或后缀是 .txt / .htm,补全会静默失效。确认当前文件右下角状态栏显示的是 HTML(不是 Plain Text 或 HTML (Legacy)),点击它可手动切换语言模式。
输入 div 按 Tab 不生成闭合标签?关掉 Emmet 的“触发方式”限制
VS Code 默认启用 Emmet,但部分旧版配置或自定义设置可能把 tab 键设为仅在特定语法中触发。打开设置(Ctrl+, ),搜索 emmet.triggerExpansionOnTab,确保它是 true。另外,检查 emmet.includeLanguages 是否漏掉了 "html": "html" —— 否则在 HTML 文件里敲 ul>li*3 按 Tab 也不会展开。
想敲 input 就自动带 type="text"?用 Emmet 的自定义缩写
原生 Emmet 不预置带属性的 HTML5 标签,但你可以通过 emmet.variables 或 emmet.syntaxProfiles 扩展。更直接的做法:在用户代码片段(Preferences: Configure User Snippets → 选 html.json)里加一条:
"input text": {
"prefix": "input",
"body": [""]
}
这样输 input + Tab 就直接插入完整结构,光标按顺序停在 name、id、value 处。