2011-06-10 29 views
4

它似乎繼承工作的顏色,但是當我嘗試繼承顏色其anchestor p,列表不能採取顏色..爲什麼繼承不起作用在這種情況下?爲什麼這個列表文本不能繼承p的藍色?

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
    <head> 
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
    <title>CSS (1)</title> 
    <style type="text/css"> 
     p#parag{color:#009;} 
    </style> 
    </head> 

    <body> 
    <p id="parag"> 
     <ul id="nav"> 
     <li>test</li> 
     </ul> 
    </p> 
    </body> 
</html> 

回答

6

<ul>塊級元件。

<p>不能包含塊級元素 - 從the HTML 4.01 spec

的P元素表示一個段落。 它不能包含塊級元素 (包括P本身)。

因此,瀏覽器正在嘗試修復這個錯誤,併產生這個HTML:

<p id="parag"></p> 
<ul id="nav"> 
    <li>test</li> 
</ul> 
<p></p> 

的解決方案是簡單的<p>更改爲<div>

+0

是的,UL的顏色需要單獨設置;或者在某些父元素(例如DIV)中包裝P和UL並將顏色置於其上。 – 2011-06-10 05:40:44

相關問題