CSS 文件压缩


如果你的应用加载时间超过 3 秒,你将失去 50% 的访问者。因此,网站加载缓慢会让用户感到沮丧,他们可能会离开你的网站。

然而,网站缓慢的原因有很多,其中之一就是 CSS 文件过大。在实际应用中,我们需要编写大量的 CSS 来为不同的网页设置样式。因此,我们可以压缩 CSS 文件以减小其大小。压缩 CSS 文件时,它会删除文件中的空格、注释等,从而减小 CSS 文件的大小。

本教程将向我们介绍压缩 CSS 文件的各种方法。

使用 Css-minify NPM 包

第一种方法是使用 CSS-minify NPM 包。我们可以在项目中安装 NPM 包来压缩 CSS 文件。

首先,用户需要使用以下命令在项目目录中安装 CSS_minify NPM 包。

npm install css-minify

之后,在终端中转到项目目录,并执行以下命令来压缩特定的 CSS 文件。

npx css-minify -f filename

在上述命令中,将文件名更改为要压缩的 css 文件名。

如果开发者想要压缩特定目录中所有现有的文件,请在终端中执行以下命令。

npx css-minify -d direName

在上述命令中,将“dirName”更改为目录名。

让我们通过下面的例子来了解 CSS 压缩。

示例 1

在下面的示例中,我们将正常的 CSS 代码添加到 CSS 文件中。之后,我们执行上述命令来压缩 CSS 文件。它会创建“css-dist”文件夹,并在包含压缩 CSS 代码的目录中添加 filename.min.css 文件。

在输出中,我们可以看到它删除了空格和注释来压缩 CSS 文件。

.element {
   /* border for element */
   border: 2px solid blue;
   /* text color for element */
   color: red;
   /* adding a gradient to the element as a background */
   background-image: linear-gradient(45deg, #000, #fff);
}
div {
   /* padding for div */
   padding: 10px;
   /* margin for div */
   margin: 10px;
   /* border for div */
   border: 1px solid #000;
}

输出

.element{background-image:linear-gradient(45deg,#000,#fff);border:2px solid blue;color:red}div{border:1px solid #000;margin:10px;padding:10px}

示例 2

这是另一个演示 CSS 压缩的示例。在这个例子中,我们使用了嵌套选择器、伪选择器、渐变函数等。之后,我们使用 CSS-minify NPM 包压缩了 CSS 文件。

li :nth-child(even) {
   /* selecting even elements of the list */
   background-color: #f2f2f2;
   color: green;
   border-radius: 12px;
   /* Applying padding */
   padding: 4px;
}
/* nested selector */
ul li ul {
   display: none;
   text-decoration: dashed;
   color: red;
   /* changing the font size */
   font-size: 12px;
   font-weight: bold;
}
div > p {
   color: blue;
   font-size: 12px;
   font-weight: bold;
}

输出

li :nth-child(2n){background-color:#f2f2f2;border-radius:12px;color:green;padding:4px}ul li ul{color:red;display:none;text-decoration:dashed}div>p,ul li ul{font-size:12px;font-weight:700}div>p{color:blue}

使用在线工具

压缩 CSS 的另一种方法是使用在线工具。市场上有很多工具可以将正常的 CSS 作为输入,并为我们生成压缩的 CSS。

用户应该尝试使用 Toptal 和 CleanCSS 在线工具来压缩 CSS。

但是,在实时开发中,在线工具对于压缩 CSS 并不可用,因为我们无法在每次更改 CSS 代码时手动压缩 CSS。因此,最好使用 NPM 包管理器。

更新于:2023年5月5日

181 次浏览

启动您的 职业生涯

完成课程获得认证

开始学习
广告