2012-07-06 51 views
1
<html> 
<head> 
    <style> 
     #wrap{ 
      width: 800px; 
      background-color: black; 
      color: red; 
     } 



     #right{ 
      float: right; 
     } 
    </style> 
</head> 
<body> 
    <div id="wrap"> 
     <div id="right"> 
      <h1>RIGHT</h1> 
     </div> 
    </div> 
</body> 

可以浮動元素從其包裝元素繼承背景顏色?

因爲在這個例子中只有文本顏色繼承不是背景顏色。有人可以解釋我爲什麼嗎?

回答

0

您可以添加到overflow:auto; #wrap做到這一點:

#wrap{ 
    width: 800px; 
    background-color: black; 
    color: red; 
    overflow:auto; 
} 

jsFiddle example

+0

這是我第一次瞭解溢出,我會搜索更多關於它的感謝。 – 2012-07-06 16:25:47

3

color屬性在CSS standards定義爲從父繼承如果沒有設置(注意「 繼承:是「部分)。 background-color property不是(默認爲transparent,並且「繼承:否」)。你總是可以做到這一點,雖然:

#right 
{ 
    float: right; 
    background-color: inherit; 
} 

當您設置background-colorinherit,將這樣做。