CSS Specificity
CSS 選擇器權重
CSS 選擇器權重是每個選擇器的比較分數。其他層疊條件相同時,瀏覽器會用這個分數決定哪個樣式優先。
另一個例子
`:where(.card)` 的權重是零,`.checkout .card.selected` 則比較高,因此主題設計權杖可以乾淨地覆寫低權重的基礎規則。遇到第三方 ID 選擇器時,會用圖層隔離,而不是再寫更長的選擇器硬碰硬。
主要部分
- 01ID 欄
- 02Class/屬性/偽類欄
- 03元素/偽元素欄
什麼時候用
元件選擇器的權重應盡量低,但仍要足以運作。樣式沒有生效時,請查看瀏覽器計算後的層疊結果。
什麼時候不要用
不要用 ID、重複的類別或到處加 `!important` 來修補 CSS 結構問題。
程式裡的名稱
selector specificity tuple; :where() contributes zero 上線前要檢查
檢查內容先後順序、共用設計變數、元件一致性、對比、縮放,以及版面能否隨螢幕大小調整。驗證每個主題、語系與狀態;有動態效果時,也要提供同樣完整的減少動態效果版本。
預期成果:定義或使用 CSS 選擇器權重 (CSS Specificity),做出清楚、一致又好用的視覺體驗。 使用者情境:`:where(.card)` 的權重是零,`.checkout .card.selected` 則比較高,因此主題設計權杖可以乾淨地覆寫低權重的基礎規則。遇到第三方 ID 選擇器時,會用圖層隔離,而不是再寫更長的選擇器硬碰硬。 要運用的設計概念:CSS 選擇器權重 (CSS Specificity)。 適用理由:元件選擇器的權重應盡量低,但仍要足以運作。樣式沒有生效時,請查看瀏覽器計算後的層疊結果。 不應使用的情況:不要用 ID、重複的類別或到處加 `!important` 來修補 CSS 結構問題。 設計要求:定義內容先後順序、可重用的設計變數(Token)與元件。說明版面如何隨螢幕大小和狀態改變。分清楚必要的設計方向與純裝飾。 包容性與韌性:檢查對比、縮放、多語系、主題切換與減少動態效果。不能只靠顏色或特效傳達意思。 驗收條件:在手機、桌面、縮放、各種主題與所有支援語系中仍清楚可讀。每個互動狀態都一致且容易理解。 證據與限制(證據邊界):正式文件仍可能是草案、候選版或最終版。請查看文件狀態,也要確認瀏覽器或平台是否支援。 待確認:品牌限制、內容多寡、支援的主題與語系、目標裝置,以及現有設計系統規則。
檢查這份需求
請 AI 程式助手檢查目前如何使用 CSS 選擇器權重 (CSS Specificity)。 定義:CSS 選擇器權重是每個選擇器的比較分數。其他層疊條件相同時,瀏覽器會用這個分數決定哪個樣式優先。 正式環境檢查:檢查內容先後順序、共用設計變數、元件一致性、對比、縮放,以及版面能否隨螢幕大小調整。驗證每個主題、語系與狀態;有動態效果時,也要提供同樣完整的減少動態效果版本。 修改程式前,先列出看到的證據、缺口、嚴重程度,以及最小且安全的修正。