falschenzug / php-remove-unused-css
PHP Remove Unused CSS 是一个使用 PHP 从您的网站中删除未使用 CSS 的工具
dev-master
2024-07-16 10:05 UTC
Requires
- php: ^8.1
- matthiasmullie/minify: ^1.3
This package is not auto-updated.
Last update: 2024-09-26 02:17:12 UTC
README
PHP Remove Unused CSS 是一个使用 PHP 从您的网站中删除未使用 CSS 的工具。由 Momentum 81 开发 - https://momentum81.com。由 https://medienweide.com 更新
- IMPORTANT! MAKE SURE YOU READ THE GUIDE FIRST OR YOU MAY INADVERTENTLY OVERWRITE YOUR CSS
主要思路是首先将您的 CSS 编译成尽可能少的文件,然后您将使用此包删除额外的类,然后使用此包(或另一个包)来压缩 CSS。
通常这是通过 JS 完成的,但是如果您想在纯 PHP 开发流程中实现这一点,可能会引发一些问题。
安装
通过 composer 安装
composer require Flaschenzug/php-remove-unused-css
(original Version: composer require Momentum81/php-remove-unused-css )
示例
$removeUnusedCss = new \Momentum81\PhpRemoveUnusedCss\RemoveUnusedCssBasic(); $removeUnusedCss->whitelist('.fab', '.far', '.fal') ->styleSheets(['ARRAY','WITH','paths']) ->htmlFiles(['ARRAY','WITH','paths']) ->setFilenameSuffix('.refactored.min') ->minify() ->refactor() ->saveFiles();
类
- 基本
基本类
基本类是通过 RemoveUnusedCssBasic 创建的。这基本上是一个“愚蠢”的系统,它不会以任何方式遍历 DOM,并且如果它出现在 CSS 中的最低级别,就会包括选择器。
尽管如此,这仍然可以在文件大小上提供一些显著的节省,尤其是在您使用像 Bootstrap 这样的包时。
$removeUnusedCss = new \Momentum81\PhpRemoveUnusedCss\RemoveUnusedCssBasic();
基本类只进行弱匹配,让我们看看以下 HTML
<div> <span class="hello">Hello World</span> </div>
以下 CSS 类将匹配并保留,尽管在 HTML 中使用的 .hello 类不在使用该类的父元素内部
.test .hello {} .test .hello::after {}