這篇文章主要介紹CSS中繼承性,特殊性,層疊性和重要性的示例分析,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!
彭山網(wǎng)站建設(shè)公司成都創(chuàng)新互聯(lián),彭山網(wǎng)站設(shè)計(jì)制作,有大型網(wǎng)站制作公司豐富經(jīng)驗(yàn)。已為彭山成百上千提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\成都外貿(mào)網(wǎng)站制作要多少錢,請(qǐng)找那個(gè)售后服務(wù)好的彭山做網(wǎng)站的公司定做!
1. 繼承性
CSS的某些樣式是具有繼承性的,那么什么是繼承呢?繼承是一種規(guī)則,它允許樣式不僅應(yīng)用于某個(gè)特定 html 標(biāo)簽元素,而且應(yīng)用于其后代。比如下面代碼:如某種顏色應(yīng)用于 p 標(biāo)簽,這個(gè)顏色設(shè)置不僅應(yīng)用 p 標(biāo)簽,還應(yīng)用于 p 標(biāo)簽中的所有子元素文本,這里子元素為 span 標(biāo)簽。
p{color:red;}三年級(jí)時(shí),我還是一個(gè)膽小如鼠的小男孩。
結(jié)果 p 中的文本與 span 中的文本都設(shè)置為了紅色。但注意有一些 css 樣式是不具有繼承性的。如 border:1px solid red;
p{border:1px solid red;}
在上面例子中它代碼的作用只是給 p 標(biāo)簽設(shè)置了邊框?yàn)?像素、紅色、實(shí)心邊框線,而對(duì)于子元素 span 是沒(méi)用起到作用的。
2. 特殊性
有的時(shí)候我們?yōu)橥粋€(gè)元素設(shè)置了不同的 CSS 樣式代碼,那么元素會(huì)啟用哪一個(gè) CSS 樣式呢?我們來(lái)看一下面的代碼:
p{color:red;} .first{color:green;}三年級(jí)時(shí),我還是一個(gè)膽小如鼠的小男孩。
p 和 .first 都匹配到了 p 這個(gè)標(biāo)簽上,那么會(huì)顯示哪種顏色呢?green是正確的顏色,那么為什么呢?是因?yàn)闉g覽器是根據(jù)權(quán)值來(lái)判斷使用哪種 css 樣式的,權(quán)值高的就使用哪種 css 樣式。
下面是權(quán)值的規(guī)則:
標(biāo)簽的權(quán)值為1,類選擇符的權(quán)值為10,ID選擇符的權(quán)值最高為100。例如下面的代碼:
p{color:red;} /*權(quán)值為1*/ p span{color:green;} /*權(quán)值為1+1=2*/ .warning{color:white;} /*權(quán)值為10*/ p span.warning{color:purple;} /*權(quán)值為1+1+10=12*/ #footer .note p{color:yellow;} /*權(quán)值為100+10+1=111*/
注意:還有一個(gè)權(quán)值比較特殊–繼承也有權(quán)值但很低,有的文獻(xiàn)提出它只有0.1,所以可以理解為繼承的權(quán)值最低。
3. 層疊性
我們來(lái)思考一個(gè)問(wèn)題:如果在html文件中對(duì)于同一個(gè)元素可以有多個(gè)css樣式存在并且這多個(gè)css樣式具有相同權(quán)重值怎么辦?好,這一小節(jié)中的層疊幫你解決這個(gè)問(wèn)題。
層疊就是在html文件中對(duì)于同一個(gè)元素可以有多個(gè)css樣式存在,當(dāng)有相同權(quán)重的樣式存在時(shí),會(huì)根據(jù)這些css樣式的前后順序來(lái)決定,處于最后面的css樣式會(huì)被應(yīng)用。
如下面代碼:
p{color:red;} p{color:green;}
最后 p 中的文本會(huì)設(shè)置為green,這個(gè)層疊很好理解,理解為后面的樣式會(huì)覆蓋前面的樣式。
所以前面的css樣式優(yōu)先級(jí)就不難理解了:
內(nèi)聯(lián)樣式表(標(biāo)簽內(nèi)部)> 嵌入樣式表(當(dāng)前文件中)> 外部樣式表(外部文件中)。
4. 重要性
我們?cè)谧鼍W(wǎng)頁(yè)代碼的時(shí),有些特殊的情況需要為某些樣式設(shè)置具有最高權(quán)值,怎么辦?這時(shí)候我們可以使用!important來(lái)解決。
如下代碼:
p{color:red!important;} p{color:green;}三年級(jí)時(shí),我還是一個(gè)膽小如鼠的小男孩。
這時(shí) p 段落中的文本會(huì)顯示的red紅色。
注意:!important要寫在分號(hào)的前面
這里注意當(dāng)網(wǎng)頁(yè)制作者不設(shè)置 css 樣式時(shí),瀏覽器會(huì)按照自己的一套樣式來(lái)顯示網(wǎng)頁(yè)。并且用戶也可以在瀏覽器中設(shè)置自己習(xí)慣的樣式,比如有的用戶習(xí)慣把字號(hào)設(shè)置為大一些,使其查看網(wǎng)頁(yè)的文本更加清楚。這時(shí)注意樣式優(yōu)先級(jí)為:瀏覽器默認(rèn)的樣式 < 網(wǎng)頁(yè)制作者樣式 < 用戶自己設(shè)置的樣式,但記住 !important 優(yōu)先級(jí)樣式是個(gè)例外,權(quán)值高于用戶自己設(shè)置的樣式。
以上是“CSS中繼承性,特殊性,層疊性和重要性的示例分析”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對(duì)大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!