1.CSS的某些樣式是具有繼承性的,那么什么是繼承呢盏浇?繼承是一種規(guī)則变丧,它允許樣式不僅應(yīng)用于某個特定html標(biāo)簽元素,而且應(yīng)用于其后代绢掰。例如p{color:red;}
但是有一些是沒有繼承性的痒蓬,如border:1px solid red;
2.有的時候我們?yōu)橥粋€元素設(shè)置了不同的CSS樣式代碼,那么元素會啟用哪一個CSS樣式呢?我們來看一下面的代碼:
p{color:red;}
.first{color:green;}
<p class="first">三年級時滴劲,我還是一個<span>膽小如鼠</span>的小女孩攻晒。</p>
p和.first都匹配到了p這個標(biāo)簽上,那么會顯示哪種顏色呢班挖?green是正確的顏色鲁捏,那么為什么呢?是因為瀏覽器是根據(jù)權(quán)值來判斷使用哪種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*/
注意:還有一個權(quán)值比較特殊--繼承也有權(quán)值但很低
層疊就是在html文件中對于同一個元素可以有多個css樣式存在,當(dāng)有相同權(quán)重的樣式存在時渔期,會根據(jù)這些css樣式的前后順序來決定运吓,處于最后面的css樣式會被應(yīng)用。
內(nèi)聯(lián)樣式表(標(biāo)簽內(nèi)部)> 嵌入樣式表(當(dāng)前文件中)> 外部樣式表(外部文件中)。
重要性
我們在做網(wǎng)頁代碼的時羽德,有些特殊的情況需要為某些樣式設(shè)置具有最高權(quán)值几莽,怎么辦迅办?這時候我們可以使用!important來解決宅静。
如下代碼:
p{color:red!important;}
p{color:green;}
<p class="first">三年級時,我還是一個<span>膽小如鼠</span>的小女孩站欺。</p>
這時 p 段落中的文本會顯示的red紅色姨夹。
注意:!important要寫在分號的前面
這里注意當(dāng)網(wǎng)頁制作者不設(shè)置css樣式時,瀏覽器會按照自己的一套樣式來顯示網(wǎng)頁矾策。并且用戶也可以在瀏覽器中設(shè)置自己習(xí)慣的樣式磷账,比如有的用戶習(xí)慣把字號設(shè)置為大一些,使其查看網(wǎng)頁的文本更加清楚贾虽。這時注意樣式優(yōu)先級為:瀏覽器默認(rèn)的樣式 < 網(wǎng)頁制作者樣式 < 用戶自己設(shè)置的樣式逃糟,但記住!important優(yōu)先級樣式是個例外,權(quán)值高于用戶自己設(shè)置的樣式蓬豁。