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 包管理器。
数据结构
网络
关系数据库管理系统 (RDBMS)
操作系统
Java
iOS
HTML
CSS
Android
Python
C 语言编程
C++
C#
MongoDB
MySQL
Javascript
PHP