装auto close tag插件可让未闭合标签“当场现形”,输入后回车自动补,删掉则高亮提醒;需同时开启html.suggest.html5和emeraldwalk.runonsave配合tidy-html5保存时报错。

VS Code 里怎么让未闭合标签“当场现形”
装 Auto Close Tag 插件(不是 Auto Rename Tag),它会在你输入 <div> 后回车时自动补 <code>
装auto close tag插件可让未闭合标签“当场现形”,输入后回车自动补,删掉则高亮提醒;需同时开启html.suggest.html5和emeraldwalk.runonsave配合tidy-html5保存时报错。

装 Auto Close Tag 插件(不是 Auto Rename Tag),它会在你输入 <div> 后回车时自动补 <code>
必须同时开启两个设置:html.suggest.html5(确保补全符合 HTML5 规范)和 emeraldwalk.runonsave 配合 tidy-html5 命令(保存时格式化并报错未闭合节点)。注意:Prettier 默认不检查闭合,加了 htmlWhitespaceSensitivity: 'strict' 也只管空格,不管结构。
原生状态栏提示(如 tag: div (unclosed))只对光标邻近几行有效,跨几十行或遇到 <section></section>、<template></template> 就失效。更可靠的是 Tag 插件(作者 sublimator):按 Ctrl+Shift+P 输入 Tag: Validate 手动触发,报错格式明确——Unclosed tag 'div' at line 42, column 8,支持直接跳转。
它默认忽略自闭合标签(如 <img>、<input>),但可自定义 ignored_tags 列表;不解析 <script></script> 内 JS,也不管 CSS 拼写,专注标签结构本身。
别信源码,浏览器渲染后的 DOM 树才是真实结构。打开 Chrome DevTools(F12),切到 Elements 面板,盯住三类信号:
<div> 展开后,内部突然多出一个本不该在那里的父级(比如 <code><footer></footer> 出现在 <header></header> 里)
Edit as HTML,删个空格再回车,整个结构“跳变”——说明原始结构已被浏览器强行修复过document.querySelectorAll('*').length 数值异常高(比如上万),常意味着嵌套失控,源头大概率是顶部某个 <div> 或 <code><section></section> 忘写闭合。
W3C 报的“第 42 行缺少
<h2></h2>、<table>)时才发现前面的 <code><div> 还开着,才报错。htmlhint 同理,<code>index.html:12:5: Tag must be paired. 提示的是发现问题的位置,不是漏写的位置。
实操建议:从报错行往上查 3~5 行,重点盯 <p></p>、<td>、<code><li> 这类易忘闭合的标签;特别注意 <p></p> 直接嵌套 <div>(HTML 规范禁止)、<code><textarea></textarea> 里写了未转义的 、或模板中 <code><div> 分支没对齐——这些地方最容易埋雷。</div>
前端入门到VUE实战笔记:立即使用
在学习笔记中,你将探索 前端 的入门与实战技巧!
相关文章
HTML编辑器中智能路径自动补全的使用技巧
HTML编辑器怎么做视频画中画?Video标签高级属性
HTML编辑器中自定义快捷键的设置与使用
HTML编辑器样式不生效怎么办?浏览器缓存清理步骤
HTML编辑器怎么配置Git?版本控制提交步骤
本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn