postcss越来越重要了,经常可以看到它的身影,比如面试,论坛。本篇文章是小编参考多方资料以及官网总结出来的,喜欢多多支持,谢谢!
什么是postcss
postcss 一种对css编译的工具,类似babel对js的处理,常见的功能如:
1 . 使用下一代css语法
2 . 自动补全浏览器前缀
3 . 自动把px代为转换成rem(rem不熟悉的,点这)
4 . css 代码压缩等等
postcss 只是一个工具,本身不会对css一顿操作,它通过插件实现功能,autoprefixer 就是其一。
与 less sass 的区别
less sass 是预处理器,用来支持扩充css语法。
postcss 既不是 预处理器也不是 后处理器,其功能比较广泛,而且重要的一点是,postcss可以和less/sass结合使用
关于取舍
虽然可以结合less/sass使用,但是它们还是有很多重复功能,用其中一个基本就 ok 了。
以下是个人的总结:
postcss 鼓励开发者使用规范的CSS原生语法编写源代码,支持未来的css语法,就像babel支持ES6。
less、sass 扩展了原生的东西,它把css作为一个子集,但这不好保持向后兼容。
总体来说区别不大,看个人喜好吧
如何使用
这里只说在webpack里集成使用,首先需要 loader
1 . 安装
npm install postcss-loader –save-dev
2 . webpack配置
一般与其他loader配合使用,下面*标部分才是postcss用到的
配合时注意loader的顺序(从下面开始加载)
3 . postcss配置
项目根目录新建 postcss.config.js文件,里面配置一些插件
注:也可以在webpack中配置
常用的postcss插件
1 . Autoprefixer
前缀补全,全自动的,无需多说
安装:
cnpm install Autoprefixer --save-dev
2 . postcss-cssnext
使用下个版本的css语法【关于语法另一篇文章会单独讲】
安装:
cnpm install postcss-cssnext --save-dev
3 . postcss-pxtorem
把px转换成rem
安装:
cnpm install postcss-pxtorem --save-dev
配置项:
特殊技巧:不转换成rem
px检测区分大小写,也就是说Px/PX/pX不会被转换,可以用这个方式避免转换成rem
下篇:cssnext,下一代css
【关注一下不迷路】
html css html css javascript html javascript css javascript css