【问题标题】:How to remove unused CSS but keep comments?如何删除未使用的 CSS 但保留评论?
【发布时间】:2012-08-18 10:39:21
【问题描述】:

我知道thisquestionhasbeenaskedmultipletimesalready,但我仍然找不到适合我的情况的解决方案。

我有一个 巨大 CSS 文件,其中大约 50% 的内容根本没有在我当前的网站中使用。它还包含许多我想保留的有价值的cmets。

由于 CSS 文件的大小,只能识别未使用的 CSS 定义的工具不是很有帮助 - 我需要一个可以更改我未使用的定义的工具,以便我可以将正则表达式应用于之后删除它们,或者自动删除我未使用的定义。

CSS Usage 在更改所有未使用的定义方面做得很好,我可以使用正则表达式轻松删除所有这些定义 - 问题是 CSS 使用也会自动从我的文件中删除所有 cmets。

如何删除 CSS 文件中所有未使用的定义但保留所有 cmets?

【问题讨论】:

    标签: css optimization stylesheet code-cleanup


    【解决方案1】:

    我可以说我设法做到了你所要求的,但它不是那么整洁! 实际上我修改了扩展代码(我不知道这是否可以接受:-D)但我知道如何让你复制它:-)!

    我在扩展代码中注释了这一行

    /* CssUsage.js : 110 */
    cssSource = cssSource.replace(/\/\*[\S\s]*?\*\//g, "");
    

    它会删除像 /* this is a comment */ 这样的 cmets

    它给了我this output

    无论如何,如果你想复制这个......
    - download the extension(保存到..)
    - 使用 winrar 等任何应用程序打开下载的.xpi
    - 编辑 chrome/content/cssusage/CssUsage.js 并评论第 110 行
    - 拖到firefox重新安装

    或者只是下载这个xpi并将其拖到firefox以重新安装扩展!
    也许您也可以尝试使用您提到的正则表达式使其删除 UNUSED 行 cssSource = cssSource.replace(/your regex/g, "");

    【讨论】:

    • 太棒了!这正是我一直在寻找的。谢谢你。我使用的正则表达式to remove UNUSED definitionsUNUSED.*\{[^}]*\}|UNUSED.*[}]*
    • 不错!如果你愿意,你也可以写评论并要求开发者为 cmets 添加一个选项:)
    猜你喜欢
    • 2015-04-13
    • 1970-01-01
    • 1970-01-01
    • 2012-03-09
    • 1970-01-01
    • 2014-01-16
    • 1970-01-01
    • 2019-05-13
    • 2021-09-29
    相关资源
    最近更新 更多