CSS 格式化与压缩
在线美化或压缩 CSS:可选缩进(2/4 空格、Tab)、选择器换行与属性排序,压缩时去掉注释与多余空白,并显示体积变化与语法错误所在行。
浏览器本地运行所有计算都在你的浏览器里完成,数据不会离开本机。
结果
这个工具能做什么
- 把压缩成一行的第三方 CSS 展开成可读的多行格式,方便定位某条规则写在哪儿。
- 上线前压缩自己写的样式:去注释、去多余空白、去掉块内最后一个分号,同时看到体积变化。
- 用「按属性名排序」把杂乱的声明统一顺序,减少代码评审里的无意义 diff。
- 粘贴一段样式报错时,工具会指出是第几行、是括号没闭合还是声明少了冒号。
示例
输入
.card,.box{color:red;padding:0 1px}
@media screen and (max-width:600px){.card{margin:0 auto}}输出
.card, .box {
color: red;
padding: 0 1px;
}
@media screen and (max-width:600px) {
.card {
margin: 0 auto;
}
}同一段内容切到「压缩」模式会输出 .card,.box{color:red;padding:0 1px}@media screen and (max-width:600px){.card{margin:0 auto}}。
常见问题
支持 @media、@supports 这类嵌套规则吗?
支持。解析器会跟踪花括号层级,@media、@supports 等 @ 规则内的声明会按层级缩进,压缩时也会保留嵌套结构。
压缩会不会改坏内容?
不会改动语义:字符串(含 url(...) 和 content: "a;b")里的空白与分号一律原样保留,只删除注释和结构外的多余空白,并去掉每个块里最后一个分号。
报错提示「括号没有闭合」「声明缺少冒号」是什么意思?
解析器是自研的轻量 tokenizer,遇到未闭合的 {、( 会报括号没有闭合,遇到块内没有冒号的片段会报声明缺少冒号,并给出出错行号。行号指向该段内容开始的位置。
体积对比里的百分比是怎么算的?
按 UTF-8 字节数计算,不是字符数:中文字符和中文注释占 3 个字节,所以含中文注释的 CSS 压缩后节省比例看起来会更高。负数表示输出比原文更大。
能格式化 SCSS / LESS 吗?
不建议。解析器按标准 CSS 语法处理,SCSS 的嵌套、变量、mixin 和 // 注释都不在支持范围内,可能被误判成语法错误。请先用编译器产出标准 CSS 再格式化。
关键词:csscss formattercss beautifycss minify美化压缩格式化css 压缩style