整個過程
查詢competing rule集。
對competing rules進行排序;
對元素,應用sorted rules中的屬性(層疊過程,高優先順序的在上面,覆蓋了下面低優先順序的屬性)
最後渲染,考慮繼承值(也是個層疊過程)和預設值, 再做屬性值轉換。
原則就是 general ---> spwww.cppcns.comecial
查詢階段
遍歷所有css rule, 找出有效的rule.
rules 排序
先 selector group,後 position group
selector groups:(從高到低)
1. !important 最高
2. inline style
3. id selector
4. clas and pseudo-class pseudo-element, attribute selector
5. element selector
6. * universal selector
先看群組級別,
最高群組相同的話, 再看本群組的積分(多少個),
如果數量相同,就要看更低的群組,重複;
如果還相同,就要看 postion group:
position group:
1.
2.
css層疊規則
網頁上的元素其實是三維的,類似於高中學的左手座標系,z軸就是垂直於螢幕。層疊上下文跟 塊狀格式化上下文 bfc 類似,只要元素擁有某些特定的css屬性,就會表現出層疊上下文的特點。前提是重疊在一起,就會按照上圖的規則呈現。1 誰大誰上 如生效的z index屬性值,大的就覆蓋小的。2 後來居上 當元...
css 樣式層疊規則
檢視別人css,發現有一段css button.dark.blue button.dark 如果這樣寫,backgroud color到底是用誰的呢?原來我只知道內聯樣式的權值 id選擇器 類選擇器 標籤選擇器這樣的規則,還有就是越精細等級越高,看上面css 應該是第乙個優先順序更高吧 測試了一下,...
css層疊性規則
在css中,會根據選擇器的特殊性來決定所定義的樣式規則的次序,具有更特殊選擇器的規則優先於具有一般選擇器的規則。各種選擇器的特殊值 1 內聯樣式的特殊值 1 0 0 0 2 id選擇器的特殊值為 0 1 0 0 3 類選擇器 屬性選擇器 偽類的特殊值為 0 0 1 0 4 元素選擇器 偽元素的特殊值...