2011-07-06 42 views
2

我想将背景颜色应用于强制内联元素..它在Ie7中显示背景颜色,但是在firefox4中,颜色不显示..为什么?以及如何分类?为什么firefox4无法显示li背景颜色?

所述的jsfiddle http://jsfiddle.net/ybYxq/

<ul id="in"> 
       <li><h1>sfffffh</h1></li> 
       <li><h1>QssssfffffhQ</h1></li> 
       <li><h1>ZssssssZ</h1></li> 
      </ul> 

CSS #IN李{背景:#0CF;显示:内联;} #IN {浮动:右;}

+0

我的铬不显示它..他? – ppumkin

+0

改为使用类,看看这个http://jsfiddle.net/ppumkin/ybYxq/1/ – ppumkin

+0

我可以有任何解释为什么我的代码不工作? –

回答

1

VIMAL尝试。

从li中删除h1标签并将字体样式添加到li中。

CSS应该是。

#in li{background-color:#171817;display:inline; color: white; font:12px Tahoma;} 
#in{float:right;} 

的HTML应该是

<!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>Untitled Document</title> 

</head> 

<body> 


       <ul id="in"> 
        <li>sfffffh</li> 
        <li>QssssfffffhQ</li> 
        <li>ZssssssZ</li> 
       </ul> 


</body> 
</html> 

这将工作...尝试任何问题,只是评论我。有一个愉快的一天...

1

事实上,它不工作Chrome也是。

尝试: #IN李{背景:#b2b2b2;} #IN {浮动:右;}

或任一: #IN李{显示:内联块;背景:#b2b2b2;} #in {float:right;}

第二个问题与IE,因为我记得很好。

1

看起来像“内联”里面的“块”h1干扰某种方式。如果你添加:

#in li h1 { display:inline; } 

你得到的背景(至少在Firefox 5中)。

1

通常,内联元素的样式不会级联到块元素。(IE7只是有点bug)如果你改变h1跨度(或将h1设置为内联),一切都会工作。