一,css選擇器:
1.id選擇器( # myid)
2.類選擇器(.myclassname)
3.標簽選擇器(div, h1, p)
4.相鄰選擇器(h1 + p)
5.子選擇器(ul > li)
6.后代選擇器(li a)
7.通配符選擇器( * )
8.屬性選擇器(a[rel = "external"])
9.偽類選擇器(a:hover, li:nth-child)
二,繼承問題:
* 可繼承的樣式: font-size font-family color, UL LI DL DD DT;
* 不可繼承的樣式:border padding margin width height ;
三,優先級算法計算的問題:
在多個選擇符應用於同一個元素上那么Specificity值高的最終獲得優先級。 選擇符Specificity值列表:規則: 1. 行內樣式優先級Specificity值為1,0,0,0,高於外部定義。 如:<div style=”color: red”>sjweb</div> 外部定義指經由<link>或<style>標簽定義的規則; 2.!important聲明的Specificity值最高; 3.Specificity值一樣的情況下,按CSS代碼中出現的順序決定,后者CSS樣式居上; 4.由繼續而得到的樣式沒有specificity的計算,它低於一切其他規則(比如全局選擇符*定義的規則)。
算法:當遇到多個選擇符同時出現時候 按選擇符得到的Specificity值逐位相加, {數位之間沒有進制 比如說: 0,0,0,5 + 0,0,0,5 =0,0,0,10 而不是 0,0, 1, 0} 就得到最終計算得的specificity, 然后在比較取舍時按照從左到右的順序逐位比較。
四,新增的偽類有哪些:
偽類及偽對象選擇符:
偽類

偽元素

