CSS優(yōu)先級的詳細解說_第1頁
CSS優(yōu)先級的詳細解說_第2頁
CSS優(yōu)先級的詳細解說_第3頁
CSS優(yōu)先級的詳細解說_第4頁
全文預覽已結束

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、CSS優(yōu)先級的詳細解說CSS優(yōu)先級的詳細解說內容簡介:在講CSS優(yōu)先級之前,我們得要了解什么是CSS,CSS是用來做什么的。簡單說來,CSS是層疊樣式表(Cascading Style Sheets)的簡稱。它的規(guī)范代表了互聯(lián)網(wǎng)歷史上一個獨特的發(fā)展階段?,F(xiàn)在對于從事網(wǎng)頁制作的朋友來說,應該很少沒有聽 在講CSS優(yōu)先級之前,我們得要了解什么是CSS,CSS是用來做什么的。簡單說來,CSS是層疊樣式表(Cascading Style Sheets)的簡稱。它的規(guī)范代表了互聯(lián)網(wǎng)歷史上一個獨特的發(fā)展階段?,F(xiàn)在對于從事網(wǎng)頁制作的朋友來說,應該很少沒有聽說過CSS了,因為在制作網(wǎng)頁過程中我們經(jīng)常需要用到。

2、我們能通過CSS為文檔設置豐富且易于修改的外觀,以減輕網(wǎng)頁制作者的工作負擔,從而減輕制作及后期維護的代價。其實現(xiàn)在還來講CSS是什么,CSS有什么作用完全是多余的,相信從事網(wǎng)頁制作的朋友都已經(jīng)或多或少的接觸過了。言歸正傳,開始進入今天的話題。一、什么是CSS優(yōu)先級?所謂CSS優(yōu)先級,即是指CSS樣式在瀏覽器中被解析的先后順序。二、CSS優(yōu)先級規(guī)則既然樣式有優(yōu)先級,那么就會有一個規(guī)則來約定這個優(yōu)先級,而這個“規(guī)則”就是本次所需要講的重點。樣式表中的特殊性描述了不同規(guī)則的相對權重,它的基本規(guī)則是:1、統(tǒng)計選擇符中的ID屬性個數(shù)。2、統(tǒng)計選擇符中的CLASS屬性個數(shù)。3、統(tǒng)計選擇符中的HTML標記名

3、個數(shù)。最后,按正確的順序寫出三個數(shù)字,不要加空格或逗號,得到一個三位數(shù)(css2.1是用4位數(shù)表示)。( 注意,你需要把數(shù)字轉換成一個以三個數(shù)字結尾的更大的數(shù))。相應于選擇符的最終數(shù)字列表可以很容易確定較高數(shù)字特性凌駕于較低數(shù)字的。例如:1、每個ID選擇符(#someid),加 0,1,0,0。2、每個class選擇符(.someclass)、每個屬性選擇符(形如attr=value等)、每個偽類(形如:hover等)加0,0,1,0。3、每個元素或偽元素(:firstchild)等,加0,0,0,1。4、其它選擇符包括全局選擇符*,加0,0,0,0。相當于沒加,不過這也是一種specific

4、ity,后面會解釋。三、特性分類的選擇符列表以下是一個按特性分類的選擇符的列表:單從上面這個表來看,貌似不大好理解,下面再給出一張表:通過上面,就可以很簡單的看出,HTML標記的權重是1,CLASS的權重是10,ID的權重是100,繼承的權重為0(后面會講到)。按這些規(guī)則將數(shù)字符串逐位相加,就得到最終的權重,然后在比較取舍時按照從左到右的順序逐位比較。優(yōu)先級問題其實就是一個沖突解決的問題,當同一個元素(內容)被CSS選擇符選中時,就要按照優(yōu)先級取舍不同的CSS規(guī)則,這其中涉及到的問題其實很多。說到這里,我們不得不說一下CSS的繼承性。四、CSS的繼承性4.1 繼承的表現(xiàn)繼承是CSS的一個主要特

5、征,它是依賴于祖先-后代的關系的。繼承是一種機制,它允許樣式不僅可以應用于某個特定的元素,還可以應用于它的后代。例如一個BODY定義了的顏色值也會應用到段落的文本中。樣式定義:舉例代碼:舉例效果:這段代碼的應用結果是:“CSS繼承性的測試”這段話是紅顏色的,“繼承性”幾個字由于應用了標簽,所以是粗體。很顯然,這段文字都繼承了由body color:#f00;樣式定義的顏色。這也就是為什么說繼承性是CSS的一部分。然而CSS繼承性的權重是非常低的,是比普通元素的權重還要低的0。我們仍以上面的舉例代碼為例:在樣式定義中添加一條:舉例效果:發(fā)現(xiàn)只需要給加個顏色值就能覆蓋掉它繼承自的樣式顏色。由此可見

6、:任何顯示申明的規(guī)則都可以覆蓋其繼承樣式。4.2 繼承的局限性繼承是CSS重要的一部分,我們甚至不用去考慮它為什么能夠這樣,但CSS繼承也是有限制的。有一些屬性不能被繼承,如:border, margin, padding, background等。樣式定義:舉例代碼:預期效果:實際效果:從上面的效果中,我們可以看出,border是不能被繼承的,還有一些其它的屬性也是如此,這里就不一一列舉。五、附加說明1、文內的樣式優(yōu)先級為1,0,0,0,所以始終高于外部定義。這里文內樣式指形如<div style="color:red>blah</div>的樣式,而外部定義指經(jīng)由<link>或<style>卷標定義的規(guī)則。2、有!important聲明的規(guī)則高于一切。3、如果!important聲明沖突,則比較優(yōu)先權。4、如果優(yōu)先權一樣,則按照在源碼中出現(xiàn)的順序決定,后來者居上。5、由繼承而得到的樣式?jīng)]有specificity的計算,它低于一切其它規(guī)則(比如全局選擇符*定義的規(guī)則)。6、關于經(jīng)由import加載的外部樣式,由于import必須出現(xiàn)在所有其它規(guī)則定義之前(如不是,則瀏覽器應該忽略之),所以按照后來居上原則,一般優(yōu)先權沖突時是占下風的。還需

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論