Stacking Context
堆疊脈絡
堆疊脈絡是 CSS 圖層的局部分組。元素會先在自己的群組內排序,再把整組和其他群組比較前後位置。
另一個例子
一個對話框放在用了 transform 的卡片裡,旁邊另有頁首。就算設定 z-index: 9999,對話框也跳不出卡片的堆疊脈絡;z-index 數字只會在所屬脈絡內比較。
主要部分
- 01context root
- 02內部繪製順序
- 03整體 sibling 順序
什麼時候用
要解釋某個重疊的子元素,為什麼無法跑到另一個圖層群組上方時,可以使用這個詞。
什麼時候不要用
不要把整個頁面當成同一套 z-index 刻度,也不要在找出堆疊脈絡根節點前一直加大數字。
程式裡的名稱
context root → local paint order → atomic sibling 上線前要檢查
檢查內容先後順序、共用設計變數、元件一致性、對比、縮放,以及版面能否隨螢幕大小調整。驗證每個主題、語系與狀態;有動態效果時,也要提供同樣完整的減少動態效果版本。
預期成果:定義或使用 堆疊脈絡 (Stacking Context),做出清楚、一致又好用的視覺體驗。 使用者情境:一個對話框放在用了 transform 的卡片裡,旁邊另有頁首。就算設定 z-index: 9999,對話框也跳不出卡片的堆疊脈絡;z-index 數字只會在所屬脈絡內比較。 要運用的設計概念:堆疊脈絡 (Stacking Context)。 適用理由:要解釋某個重疊的子元素,為什麼無法跑到另一個圖層群組上方時,可以使用這個詞。 不應使用的情況:不要把整個頁面當成同一套 z-index 刻度,也不要在找出堆疊脈絡根節點前一直加大數字。 設計要求:定義內容先後順序、可重用的設計變數(Token)與元件。說明版面如何隨螢幕大小和狀態改變。分清楚必要的設計方向與純裝飾。 包容性與韌性:檢查對比、縮放、多語系、主題切換與減少動態效果。不能只靠顏色或特效傳達意思。 驗收條件:在手機、桌面、縮放、各種主題與所有支援語系中仍清楚可讀。每個互動狀態都一致且容易理解。 證據與限制(證據邊界):正式文件仍可能是草案、候選版或最終版。請查看文件狀態,也要確認瀏覽器或平台是否支援。 待確認:品牌限制、內容多寡、支援的主題與語系、目標裝置,以及現有設計系統規則。
檢查這份需求
請 AI 程式助手檢查目前如何使用 堆疊脈絡 (Stacking Context)。 定義:堆疊脈絡是 CSS 圖層的局部分組。元素會先在自己的群組內排序,再把整組和其他群組比較前後位置。 正式環境檢查:檢查內容先後順序、共用設計變數、元件一致性、對比、縮放,以及版面能否隨螢幕大小調整。驗證每個主題、語系與狀態;有動態效果時,也要提供同樣完整的減少動態效果版本。 修改程式前,先列出看到的證據、缺口、嚴重程度,以及最小且安全的修正。