一、偽類
1.:link
偽類將應用于未被訪問過的鏈接。IE6不兼容,解決此問題,直接使用a標簽。
:hover
偽類將應用于有鼠標指針懸停于其上的元素。在IE6只能應用于a連接,IE7+所有元素都兼容。
:active
偽類將應用于被激活的元素,如被點擊的鏈接、被按下的按鈕等。
:visited
偽類將應用于已經被訪問過的鏈接
:focus
偽類將應用于擁有鍵盤輸入焦點的元素。
2.排序遵循LoVe?HAte原則
二、偽元素
:first-line
:first-letter
注釋:以上兩個偽元素只能用于塊級元素
:first-child
偽元素,選擇屬于第一個子元素的元素。
例如:span:first-child{}/*選擇屬于第一個子元素的所有span標簽。*/
:before與:after偽元素,可以設置元素之前后之后的內容,并且配合content設置相關內容。比如:#demo:after,#demo:before {content:"--";display:block; }
三、CSS的特性
1.CSS的層疊性,也就是說后來設置的樣式會層疊(覆蓋)之前的樣式,層疊性的前提示CSS的選擇器的優先級相同。
2.CSS的繼承性是指,子容器的樣式會繼承父容器的樣式。但并不是所有的樣式都能繼承。只有部分樣式能繼承,比如:文字相關字體大小、顏色、字體樣式、行高、鼠標樣式等。盒子相關的樣式都不能繼承,比如:寬高、背景色、邊距、浮動、絕對定位等。
3.
繼承的樣式要大于默認的樣式
通配符選擇器的樣式的優先級比繼承樣式的優先級要高
標簽的選擇器的優先級要高于通配符選擇器的優先級。
類選擇器的樣式的優先級要高于 標簽選擇器的樣式的優先級
行內樣式的選擇器的優先級高于id選擇器的優先級。
復合選擇器的樣式優先級核算:
復合選擇器的優先級根據四個層次來算,首先是行內最高。
其次,比較所有的id選擇器的個數,個數多的為高。
再次比較類選擇器的個數,個數多的為高,
最后比較標簽選擇器的個數,個數多的為高。
總結:
行內樣式 > 頁內樣式 > 外部引用樣式 > 瀏覽器默認樣式
important > 內聯 > ID > 偽類|類 | 屬性選擇? > 標簽? > 偽對象 >? 通配符 > 繼承