Vue PostCSS的使用介绍
碰磕 人气:0PostCSS
postcss 一种对css编译的工具,类似babel对js的处理,常见的功能如:
1 . 使用下一代css语法
2 . 自动补全浏览器前缀
3 . 自动把px代为转换成rem
4 . css 代码压缩等等
使用
创建好项目并且初始化npm init -y
创建一个页面,一个css
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>PostCSS</title> <link rel="stylesheet" href="./index.css" rel="external nofollow" > </head> <body> <div class="box"> <div class="box_1">盒子1</div> <div class="box_2">盒子2</div> <div class="box_3">盒子3</div> </div> </body> </html>
css
body{ background-color: black; } .box{ display: flex; justify-content: space-between; text-align: center; } .box_1{ width: 200px; height: 100px; background-color: red; font-size: 18px; &:hover{ background-color: blue; } } .box_2{ width: 200px; height: 100px; background-color: yellow; } .box_3{ width: 200px; height: 100px; background-color: blue; }
安装依赖
npm i postcss postcss-cli
运行
npx
是高版本node可以使用的
npx postcss 源文件名.css -o 编译后的文件名.css
这样就能转换一个新css文件,然而并没有啥变化
使用第三方插件autoprefixer
Autoprefixer是一款自动管理浏览器前缀的插件,它可以解析CSS文件并且添加浏览器前缀到CSS内容里
主要用于处理兼容性问题
可以查看浏览器前缀信息
npx autoprefixer --info
运行
在-u 后面加上插件
npx postcss index.css -o dist.css -u autoprefixer
如果觉得以上运行方式太垃,那我们就开启新的方式吧!!!
使用第三方插件postcss-preset-env
postcss-preset-env是一个兼容浏览器,给一些css加上前缀的插件
npm i --dev postcss-preset-env
运行后可以发现会自动给你做兼容性处理
源代码:
body{ background-color: black; } .box{ display: flex; justify-content: space-between; text-align: center; } .box_1{ width: 200px; height: 100px; background-color: red; &:hover{ background-color: blue; } } .box_2{ width: 200px; height: 100px; background-color: yellow; } .box_3{ width: 200px; height: 100px; background-color: blue; }
编译后
body{ background-color: black; } .box{ display: -webkit-box; display: -webkit-flex; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -webkit-justify-content: space-between; -moz-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; text-align: center; } .box_1{ width: 200px; height: 100px; background-color: red; font-size: 1.125rem; } .box_1:hover{ background-color: blue; } .box_2{ width: 200px; height: 100px; background-color: yellow; } .box_3{ width: 200px; height: 100px; background-color: blue; }
是不是觉得很方便很beautiful~
使用第三方插件postcss-pxtorem
它是一款自动将px转rem的插件
npm i --dev postcss-pxtorem
然后就可以正常使用了
本来是这样的:
.box_1{ width: 200px; height: 100px; background-color: red; font-size: 18px; }
用了它就这样了:
.box_1{ width: 200px; height: 100px; background-color: red; font-size: 1.125rem; }
Is so good!!!
上方插件就演示这么多了,再介绍一下如何方便的运行:
运行的新方式
创建config文件
postcss.config.js
const postcssPresetEnv=require('postcss-preset-env') module.exports={ plugins: [ require("autoprefixer"), postcssPresetEnv({ stage:0 }), require("postcss-pxtorem"),//单位转换 ] }
这样就能使用了
通过npx postcss 源文件名.css -o 编译后文件名.css
如果还觉得繁琐可以在package.json中进行配置简化该运行命令!!
加载全部内容