Sublime Text 默认不自动闭合HTML标签,需手动启用auto_close_tags或使用Emmet/原生快捷键Ctrl+Shift+.;关键前提是语法识别为HTML,且须用英文输入法。

Sublime Text 默认不自动闭合 HTML 标签,所谓“输入 <div> 回车就出 <code><div></div>”是错觉——它要么靠插件(如 Emmet 或 AutoCloseTag),要么靠原生命令,没有开箱即用的实时闭合。
为什么按 > 没反应?检查 auto_close_tags 和语法识别
Sublime Text 4 默认把 auto_close_tags 设为 false,不是 true。很多人以为“装完就有”,其实得手动开。
- 打开 Preferences > Settings,在右侧用户设置中加这一行:
"auto_close_tags": true - 确认右下角状态栏显示的是
HTML(不是Plain Text、XML或JavaScript);点它可手动切换 - 必须用英文输入法按
>——中文输入法下按出的是「>」,插件收不到原始字符 - 该设置只对成对标签生效(
<p></p>、<div>),不会处理 <code><img alt="Sublime Text如何快速闭合标签_Sublime Text自动完成HTML标签【前端】" >;后者由auto_insert_tags控制,别混Emmet 的
Tab补全比>更可靠,但别和原生设置共存Emmet 是 Sublime Text 4 v4126+ 原生集成的,不用额外安装,但它默认不启用自动闭合逻辑。
- 进 Preferences > Package Settings > Emmet > Settings,确保有
"auto_close_tag": true - 输入
div(不是<div>)再按 <code>Tab→ 得到<div></div>;输ul>li*3+Tab→ 直接生成嵌套结构 - 如果同时开了
auto_close_tags,会出现重复闭合:比如<div> + <code>>出一次,再按Tab又出一次,变成<div></div></div></li> <li>解决办法:关掉原生设置,只留 Emmet 管理闭合;或在 Emmet 设置里加 <code>"enable_tab_expand": false
,改用快捷键触发Ctrl+Shift+.(Win/Linux)或Cmd+Shift+.(macOS)是唯一不依赖插件/语法的方案这个快捷键调用的是 Sublime 原生的
close_tag命令,不走 Emmet,也不吃插件干扰,适合救急。立即学习“前端免费学习笔记(深入)”;
- 光标放在任意位置:在
<section> 后、<code>前、甚至标签名中间,都有效 - 哪怕文件后缀是
.inc或.shtml,右下角显示Plain Text,它照样工作 - 不响应?检查是否被其他插件劫持了快捷键(比如某些主题或 Snippet 插件会重定义
.键) - 它只补缺失的对应标签,不会改已有内容——比如你写了
<div>content,按它就补 <code>div>,不会动前面别装 AutoCloseTag,除非你明确需要「输完就闭合」且能控白名单
AutoCloseTag(作者 wingyplus)确实能在输
<div> 后按 <code>>实时补
- 光标放在任意位置:在
- 进 Preferences > Package Settings > Emmet > Settings,确保有



















