2012-07-06 50 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,将这样做。