<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> <style type="text/css"> .li{color: #25A725;} .li #a{color: #25A725;} </style> </head> <body> <ul> <li id="li1">li1</li> <li id="li12">li12</li> <li id="li11">li11</li> <li id="li13" class="li"><span>li13</span></li> <li id="li15" class="li"><a href="#">li15</a> </li> <li id="li15" class="li"><a href="#" id="a">li17</a> </li> <li id="li18">li18</li> </ul> </body> </html>
因為a標簽不能繼承樣式,所以
.li #a{color: #25A725;}重新設置
1、結論:由於CSS的層疊(cascading),a元素繼承自li的樣式(color:#25A725)被瀏覽器的a元素的默認樣式給覆蓋了。
2、理由:
看圖:
圖一:
圖二:
由以上兩個圖可以知道:
1、瀏覽器本身對 a元素有默認樣式(user agent stylesheet)(圖二),對 span元素沒有默認樣式(圖一)
2、由於CSS的層疊,a元素red顏色繼承自div(Inherited from div)被划掉了(圖二)。
3、涉及到的知識點:
1、瀏覽器本身對 a元素有默認樣式(user agent stylesheet)(圖二),對 span元素沒有默認樣式(圖一)
2、由於CSS的層疊,a元素red顏色繼承自div(Inherited from div)被划掉了(圖二)。
3、涉及到的知識點:
