postcss是乙個依賴postcss外掛程式處理css工程化問題如:編譯未來css語法和css預編譯語法為瀏覽器能相容和識別的css語法的工具。安裝postcss和其命令列工具、預設:
npm i -d postcss postcss-cli postcss-preset-env
postcss-cli是專門呼叫postcss庫api的工具,postcss-preset-env是整合了postcss大部分常用外掛程式,安裝此預設等於安裝了precss、autoprefixer等一系列外掛程式。
構建語法:
postcss 原始碼檔案 -o 輸出檔案
配置postcss:
根目錄下建立postcss.config.js
配置預設外掛程式
module.exports =
}}
stage
引數的值表示postcss要對哪個css語法標準階段做相容處理,不寫該引數預設為2。
css語法標準階段有5個:
例如stage
為0的時候,表示在草案階段的語法會做相容處理,而設定為2的時候,遇到在0和1階段的語法不做處理,直接輸出。
配置相容的瀏覽器:
方式一:在.browserslistrc
檔案配置
last 2 version1% in cn
not ie <= 8
last 2 version
: 瀏覽器的相容最近期的兩個版本
1% in cn
: 匹配中國大於1%的人使用的瀏覽器, in cn可省略
not ie <= 8
: 排除掉版本號小於等於8的ie瀏覽器
方式二:package.json
配置
「browserslist」: [方式三:在「last 2 version」,
「> 1%」,
not ie <= 8
]
postcss-preset-env
的配置中加入browsers
引數。
module.exports =
}}
方式一和二對所有涉及瀏覽器版本相容的配置外掛程式都起作用,方式三隻對postcss起作用。
更多browserslistrc詳情配置:
webpack中使用postcss
在webpack.config.js
中配置:
module.exports =,}
,]}]
}}
在gulp中使用postcss
在gulpfile.js
中配置:
gulp.
task
('css',(
)=>
)
例子:
::placeholder
編譯為:
::-webkit-input-placeholder
::-moz-placeholder
:-ms-input-placeholder
::-ms-input-placeholder
::placeholder
自動加上了瀏覽器廠商字首。 介紹CSS編譯工具CSS Lint
不久以前,nicole sullivan 和我宣布在一起工作。現在我們很高興的向大家宣布我們 第乙個合作的成果css lint誕生了,就像你們所猜想的那樣,css lint的目的就是幫助你 寫出更好的css 在過去幾周我們花大量的時間,建設和辯論規則,以幫助大家編寫更 有效和更優秀的css 規則剛開...
CSS預編譯工具(SASS,LESS)
sass和less都是專用於css的預編譯語言,他們2者的功能,操作都是大同小異。less稍微簡單一些,而sass有一些比較成熟的框架 如compass 功能強大一些,其中的語法也比較符合一門程式語言的習慣,比如說函式,作用域,程序控制等等。所以,我也是選擇的sass來使用。一 sass中文官網 使...
CSS工程化簡單介紹 PostCSS介紹與外掛程式使用
css工程化在不同公司有不同做法,主要關注四個方面 組織 的組織,怎麼劃分模組,怎麼更方便合作 優化 怎樣寫更好,團隊合作中為什麼要這麼做 構建 的壓縮 上線等等 維護css postcss解析轉化 css postcss解析轉化階段可以做的事 模組化,加字首,相容性等等 postcss本身只有解析...