CSS的選擇器來指定要樣式化的元素。當一個元素被多個選擇器選中時,會根據選擇器的權重來確定應用哪個規則。這篇文章將介紹CSS中規定元素選擇器權重的規則。
權重規則: !important > 行內樣式 > #id > .class > element 1. !important 這是最高優先級的規則。使用!important會覆蓋掉所有其他規則。 2. 行內樣式 在HTML元素中直接設置的樣式,如style="color:red"。行內樣式的優先級比其他規則高。 3. #id id選擇器有更高的權重,比如#header,#footer,#nav等。HTML中每個id都應該是唯一的。 4. .class class選擇器是指用點(.)開頭的選擇器,如.class1,.class2等。 5. element 元素選擇器是指指定HTML元素類型,如p,a,div,span等。 如果同一個元素同時滿足多個選擇器的條件,將會按優先級由高至低依次應用規則,最后的規則會覆蓋前面的規則。例如:
<html> <head> <style> p { color: red; } .class1 { color: blue; } #myParagraph { color: green; } </style> </head> <body> <p class="class1" id="myParagraph">Hello World!</p> </body> </html>
在上面的代碼中,元素p同時滿足三個選擇器的條件,但由于#myParagraph的權重最高,因此文本顏色將會是綠色。
當元素有相同的級別的選擇器時,選擇器出現順序將會影響優先級。出現在最后的選擇器會優先應用。例如:
<html> <head> <style> p { color: red; } .class1 p { color: blue; } </style> </head> <body> <div class="class1"> <p>Hello World!</p> </div> </body> </html>
在上面的代碼中,元素p同樣滿足兩個選擇器的條件,但由于.class1 p默認情況下比p具有更高的優先級,因此文本顏色將會是藍色。
總之,在使用CSS規定元素選擇器時,需要記住元素選擇器的優先級,以確保所要應用的規則按照預期生效。
下一篇css控制div的順序