資料夾與檔案

降低依賴 SASS/SCSS 且只支援於主流現代瀏覽器

使用純 CSS 編寫,搭配 CSS Variables 與 使用巢狀寫法方便維護(後續章節會提到)。

使用 Cascade Layers 輔助權重區別。

基本概念為絕對不能被覆蓋掉的樣式放後面圖層。

@layer reset, ui, vendor, variations, utilities, print;

目前還沒有主流使用方式,我參照目前我覺得合理的方式編排。

一般被視為 global 的 css

請寫入 ui.css 或 @import 到 ui layer。

Component 一般來說是不應該被更動且獨立的

所以 Component 的 css 應該被放入到 /components 自己的檔案或資料夾裡,非必要請不要建立一個 components 的@layer。除非是打包時,Component 裡的 CSS 沒有應用到,這時才把它搬到 @layer(components)。

請注意寫在 Component 的 CSS Variables 需有預設值,以防沒有設定 CSS Variables, 也就是說,Component 的 CSS Variables 預設值,避免再使用 CSS Variables 代替,才能達到獨立性以及重用性。 例如:請寫 color: var(--color, red); 不要寫 color: var(--color, var(--color-default));

修改第三方原始檔

則請複製原始碼至 vendor.css 裡修改,例如改變第三方的 font-size ,從 px 改成相對單位,以符合臺灣無障礙規定。

如果只是想引入第三方 css 不修改,請建立一個檔案並 @import 放入 vendor layer 中,以便以圖層方式管理 css。

覆蓋第三方CSS

variations 則是撰寫覆蓋第三方的 css,例如您想使用覆蓋的方式修改樣式,也就是不動到原始碼。

utilities 為最小單位

基本都只有一個 css 屬性,因為其絕對不能再被覆蓋的特性,所以排在最後面,優先權較高。

Last updated