emmet在vscode 1.70+默认启用,需确认emmet.enable为true并配置emmet.includelanguages(如{"vue": "html"});html缩写需文件类型正确、光标在行尾;css缩写依赖前缀规则(如m10→margin:10px);自定义推荐用emmet.variables和emmet.snippets。

Emmet在VSCode里默认就开着,但得确认它没被关掉
VSCode 1.70+ 版本默认启用 Emmet,但如果你用的是自定义设置、远程开发环境或禁用了某些扩展,emmet.enable 可能被设为 false。打开设置(Ctrl+, 或 Cmd+,),搜 emmet.enable,确保它是勾选状态;再检查 emmet.includeLanguages 有没有漏掉你常用的语言,比如 "html"、"css"、"scss"、"vue" —— Vue 单文件组件里的 <style></style> 块默认不触发 Emmet,就得手动加一条:
{"vue": "html"}。
写 HTML 时缩写不展开?先看光标位置和文件类型
常见现象:敲完 ul>li*3 按 Tab 没反应。原因通常是:
• 当前文件没被识别为 html(右下角显示 “Plain Text” 或 “CSS”)→ 点击语言模式,选 HTML;
• 光标不在行尾,或前面有空格/符号 → Emmet 默认只在行末或紧跟字母/数字后生效;
• 在字符串、注释或 JS 代码块里写了缩写 → Emmet 不工作,它只作用于对应语言的纯文本区域。
另外,! 展开成 HTML5 模板是 html:5 的别名,但 VSCode 默认只认 !,前提是当前是 html 文件且光标在首行空行。
使用 PptxGenJS 和 Python 解析,将结构化的 HTML/CSS 幻灯片内容转换为原生、可编辑的 PowerPoint(.pptx)演示文稿。
CSS 中用 Emmet 写属性值,得记住几个关键缩写规则
CSS Emmet 不是“写啥补全啥”,而是靠前缀驱动:
• m10 → margin: 10px;,mt-20 → margin-top: -20px;(负号要连着写);
• w100p → width: 100%;,h50 → height: 50px;(单位默认 px,加 p 才是 %);
• @m → @media,@k → @keyframes;
• 多个值用连字符分隔:bd1-s#000 → border: 1px solid #000;。
注意:CSS 缩写不支持嵌套语法(如 &:hover),也不解析变量或自定义函数,纯靠内置映射表匹配。
自定义 Emmet 缩写容易改坏,优先用 emmet.variables 和 emmet.snippets
直接改 emmet.json 或覆盖核心配置风险高,推荐两处安全入口:
• emmet.variables:定义全局变量,比如 {"lang": "zh-CN", "charset": "UTF-8"},然后在缩写里用 {lang} 引用;
• emmet.snippets:加自定义片段,例如:
{"html": {"cc": "console.log('${1:data}');${0}"}},这样在 HTML 文件里输 cc + Tab 就能插 JS 日志;• 修改后必须重启 VSCode 或重载窗口(
Ctrl+Shift+P → Developer: Reload Window),否则不生效。别碰
emmet.extensionsPath,那是给老版本留的,新版已弃用,设了反而可能让 Emmet 失效。
实际用得多的缩写,比如 .container>.row>.col-md-6*2 或 bgc#f00,背后都依赖准确的语言上下文和干净的输入位置。最容易忽略的是:Vue / JSX / Markdown 中的 HTML 片段,必须显式声明语言绑定,不然 Emmet 根本不知道你在写什么。前端入门到VUE实战笔记:立即使用
在学习笔记中,你将探索 前端 的入门与实战技巧!










