博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
(14/24) css进阶:(入门)去除冗余的css
阅读量:6633 次
发布时间:2019-06-25

本文共 1584 字,大约阅读时间需要 5 分钟。

在平时的项目开发中,我们会引入一些框架,比如:Bootstrap,但是在项目中通常我们只使用它的一小部分,还有部分是冗余的。更有甚有时候需求更改,带来DOM结构的更改,这时候我们可能无暇关注CSS样式,会造成很多冗余的CSS。我们得想办法消除冗余的CSS,如果靠人工去剔除,吃力又容易出错,因此,此节我们来学习一下用webpack如何消除未使用的CSS

PurifyCSS

使用PurifyCSS可以大大减少CSS冗余,消除框架中未使用的CSS,初步达到按需引入的效果。

1.如何在webpack中使用?

860581-20181216231609714-2068090749.png

1.1 安装

安装PurifyCSS-webpack插件,PurifyCSS-webpack是依赖于purify-css这个包的,所以这两个都需要安装。这里采用npm安装(也可采用cnpm安装)

npm i -D purifycss-webpack purify-css

-D:是–save-dev的一个简写。

1.2 引入

(1)因为我们需要同步检查html模板,所以我们需要引入node的glob对象使用。在webpack.config.js文件头部引入glob。

const glob = require('glob');

(2)引入purifycss-webpack

同样在webpack.config.js文件头部引入purifycss-webpack

const PurifyCSSPlugin = require("purifycss-webpack");

1.3 配置plugins

引入完成后我们需要在webpack.config.js里配置plugins。代码如下

plugins:[    new extractTextPlugin("css/index.css"),    new PurifyCSSPlugin({        // Give paths to parse for rules. These should be absolute!        paths: glob.sync(path.join(__dirname, 'src/*.html')),        })]

这里配置了一个paths,主要是需找html模板,purifycss根据这个配置会遍历你的文件,查找哪些css被使用了。

注意:使用这个插件必须配合extract-text-webpack-plugin这个插件且extract-text-webpack-plugin插件必须在purifycss-webpack之前引入,extract-text-webpack-plugin插件相关知识点

1.4 编写css代码

配置好上边的代码,我们可以故意在src/css/index.css文件里写一些用不到的属性,比如:

#hello{    background-color: #018eea;    color: red;    font-size: 32px;    text-align: center;}

1.5 打包

此处打包分为两种情况:一是使用了插件配置后的打包,另一个是未使用插件配置的打包(删除或注释plugins中的PurifyCSSPlugin配置),主要是对比有无插件的打包情况。

使用webpack命令进行打包

webpack

结果1-----无插件样式都被打包了:

860581-20181216230055079-328911972.png
结果2:----有插件,多余样式没有被打包:
860581-20181216230128554-707748025.png

此节只是对如何使用这个插件做了简单的描述,更多其他的一些相关配置要求,需逐步深入。有什么问题,欢迎留言!!

posted on
2018-12-16 23:02 阅读(
...) 评论(
...)

转载于:https://www.cnblogs.com/wfaceboss/p/10129019.html

你可能感兴趣的文章
shell流程控制语句
查看>>
小技巧
查看>>
代码调用t.cn接口生成短址
查看>>
java学习笔记08-switch case语句
查看>>
Android自定义键盘
查看>>
delphi WebBrowser的使用方法详解(三)
查看>>
Key User Responsibility in SAP project rolling out
查看>>
高性能分布式闪存系统探讨
查看>>
Android视图SurfaceView的实现原理分析
查看>>
Windows安全攻略:教你完全修复系统漏洞
查看>>
2014-1-6_Servlet路径和配置那些事儿
查看>>
Open-E DSS V7 应用系列之一 系统简介
查看>>
服务质量 (QoS) 概述
查看>>
RHEL6入门系列之二十八,init进程与系统运行级别
查看>>
***S 2012 建立图表 -- 图表微整形
查看>>
IT屌丝DIY ESXI虚拟化服务器记实
查看>>
那些年,我在网易的工作经验
查看>>
我的友情链接
查看>>
运行Hadoop自带的wordcount单词统计程序
查看>>
rsyslog日志服务器配置,如何使用loganalyzer做日志分析。
查看>>