CSS
支援的副檔名:css、pcss 及 postcss
CSS 資源可於 JavaScript 或 HTML 檔案中被匯入:
import './index.css';<link rel="stylesheet" type="text/css" href="index.css">CSS 資源也能透過 @import 語法引用相依檔案,或用 url() 匯入影像、字型檔等等的檔案。
其他透過 @import 引用的 CSS 檔案將會被插入於同一個 CSS bundle 裡,而使用 url() 引入的檔案則會被改寫為實際檔案輸出路徑。
所有檔名都必須使用相對於目前 CSS 檔案的路徑。
/* 匯入另一個 CSS 檔 */
@import './other.css';
.test {
/* 引用一張圖檔 */
background: url('./images/background.png');
}除了純 CSS 以外,Parcel 也支援其他編譯至 CSS 的語言如 LESS、SASS 及 Stylus 等。它們的執行方式與純 CSS 相同。
PostCSS
PostCSS 是款可以轉換 CSS 的外掛,它有如 autoprefixer、Preset Env 和 CSS Modules 等等的外掛。
若要在 Parcel 中使用 PostCSS,你需要建立下列其中一個設定檔:.postcssrc (JSON)、.postcssrc.js 或 postcss.config.js。
在你的 app 中安裝外掛:
yarn add postcss-modules autoprefixer接著建立 .postcssrc:
{
"modules": true,
"plugins": {
"autoprefixer": {
"grid": true
}
}
}使用外掛時需於 plugins 內新增一個屬性,外掛選項則為此屬性的值,並以物件形式設定。若外掛無需設定,將屬性值設定為 true 即可。
針對 Autoprefixer、cssnext 及其他工具的支援瀏覽器可在 .browserslistrc 中設定:
> 1%
last 2 versions在指定最外層的 modules 時,CSS 模組啟用方式稍有不同。因 CSS 模組會匯出一個需要被引入在 JavaScript bundle 中的物件,Parcel 需要對此特別處理。
需要注意的是,你仍須在專案中安裝 postcss-modules。
使用現有的 CSS 函式庫
為使現有的 CSS 模組可以正常運作,需要特別在它們的 .postcssrc 指定支援程度。
設定 cssnano CSS 壓縮
Parcel 會將 cssnano 加入至 PostCSS 以便在正式編譯中對 CSS 進行壓縮。若需設定 cssnano 可以建立 cssnano.config.js 檔案:
module.exports = {
preset: [
'default',
{
calc: false,
discardComments: {
removeAll: true
}
}
]
}
協助我們讓本文件更加完善
若有什麼內容遺漏了或是敘述不清楚的地方,請在本站的 repository 中開啟一個 issue 或者編輯此頁面。