Sublime Text 默认无 CSS 属性值提示,因其内置补全基于静态旧版 CSS2 JSON 列表,不支持现代值、自定义属性及预处理器;推荐 CSSAutoComplete + Emmet + ColorHighlighter 组合方案。

Sublime Text 默认不提供完整的 CSS 属性值自动提示(比如输入 display: 后无法列出 flex、grid、inline-block 等),必须靠插件补全。原生的 css-completions 仅支持基础属性名,值列表缺失且不更新 CSS 新标准。
为什么默认没有属性值提示?
Sublime Text 内置的 CSS 补全是静态的、基于旧版 CSS2 的 JSON 列表,没集成 Can I Use 数据源,也不解析当前项目中的自定义变量(如 CSS Custom Properties)或预处理器语法(如 Sass $color-primary)。所以你敲 background:,它只给 url() 和几个老式颜色关键字,不会出现 rebeccapurple 或 hsl(200, 100%, 50%) 这类现代值。
推荐插件:CSSAutoComplete + Emmet + ColorHighlighter
这三个组合能覆盖 90% 的日常需求,轻量、无 Python 依赖、不拖慢启动速度:
-
CSSAutoComplete:真正提供属性值智能提示——根据属性名动态匹配合法值(position→static/sticky;border-style→dashed/double),还支持媒体查询断点关键词(min-width、screen) -
Emmet:官方自带但常被禁用,启用后d:f+Tab可展开为display: flex;,适合快速写声明,和值提示互补 -
ColorHighlighter:不是补全插件,但能实时高亮#fff、rgba(0,0,0,0.5)、var(--bg)并显示取色器,间接帮你确认写的值是否被识别
安装后要手动开启 CSS 值提示
装完 CSSAutoComplete 不会自动生效,需检查两个地方:
立即学习“前端免费学习笔记(深入)”;
- 确保当前文件语法是
CSS(右下角显示 “CSS”,不是 “Plain Text” 或 “SCSS”;如果是 .scss 文件,需额外装SCSS插件并配置css_completions_enabled) - 打开
Preferences → Package Settings → CSSAutoComplete → Settings,确认"enable_css_value_completions": true已启用(默认是true,但某些旧版本默认false) - 如果仍不触发,尝试在
display:后按Ctrl+Space(Windows/Linux)或Cmd+Space(macOS)手动唤出补全面板
遇到提示不全或错乱?优先检查这三点
常见失效场景不是插件坏了,而是环境没对齐:
- 你在写
.vue单文件组件里的块?默认不激活 CSS 补全,需在View → Syntax → Open all with current extension as… → CSS临时切换,或装Vue Syntax Highlight并配置其关联 CSS 规则 - 用了 PostCSS 插件(如
postcss-custom-properties)定义了--main-color: #007acc;?CSSAutoComplete不读取运行时变量,它只认 W3C 标准值,var(--main-color)不会出现在提示里 - Sublime Text 版本低于 4126?旧版对 LSP 支持弱,
CSSAutoComplete在 v3 下可能漏掉inset、contents等新值,升级到 ST4 是最省事的解法
真要支持 CSS 变量、@apply、容器查询(@container)这类前沿特性,就得上 LSP 方案(SublimeLSP + vscode-css-languageserver),但配置成本高、内存占用翻倍,日常写业务 CSS 几乎用不到。把 CSSAutoComplete 调对,比折腾语言服务器实在得多。










