在部署之前,是否有压缩HTML类属性和CSS选择器的工具?

ste*_*ang 36 html css compression

在当前项目中,我被要求在部署之前压缩HTML类属性和相应的CSS选择器.例如,生产代码是:

<div class="foo">
  <div id="bar"></div>
</div>

.foo {/*Style goes here*/}
#bar {/*Style goes here*/}
Run Code Online (Sandbox Code Playgroud)

在部署时,我希望替换HTML类和相应的CSS选择器:

<div class="a">
  <div id="b"></div>
</div>

.a {/*Style goes here*/}
#b {/*Style goes here*/}
Run Code Online (Sandbox Code Playgroud)

存档此压缩的可用工具是什么?

Lit*_*tek 14

如果你真的想重命名类名(请记住Madmartigan所说的)Google Closure Stylesheets就是这么做的.这是一种矫枉过正,YUI压缩器或任何其他缩小+ gzipping工具应该会给你足够的性能提升,但它可以做到这一点.您将不得不使用其他Closure工具对您的.js文件和html模板进行适当的更改.


Tyl*_*ves 5

这是令人惊讶的短视.

  • 步骤1:在Web服务器中启用GZip或Zlib压缩
  • 第2步:所有文本都被压缩,通常为70%或更多
  • 第3步:没有第3步.
  • 第4步:利润

  • 你不需要生产的代码可读性!看谷歌,Facebook和任何其他主要网站.压缩所有类和ID,以便从HTML和CSS中节省尽可能多的字节.没有人应该关心生产可读性.**唯一**参数是性能. (27认同)
  • 我强烈建议任何人低调解释为什么最好以代码可读性为代价节省0.1%,而不是免费节省吨数.如果您已经在Web服务器中进行压缩,那么这些编辑就没有了,因为压缩已经简化了常见的序列. (6认同)
  • @vsync我会在生产中为"性能"添加"安全性":) (2认同)

Jan*_*eer 5

如果您使用节点处理代码,还有一个名为"rename-css-selectors"的项目:

https://www.npmjs.com/package/rename-css-selectors

它还有一个Gruntplugin:

https://www.npmjs.com/package/grunt-rcs

这将缩小HTML,JS和CSS文件中的所有CSS选择器(实际上是您想要的任何文件).我最后节省了20%的CSS文件大小.