宽度100%未填满屏幕

时间:2012-03-17 03:46:30

标签: html css

我正在浏览其他相关的主题,但我找不到修复程序.. Div不会使用所选的背景颜色填充100%的屏幕,仅填充<li>的宽度 CSS:

#menuspace{
    background: #2175bc;padding:0;margin:0;width:100%;
}
#menubutton {
margin:0;
    padding: 0;
    width:100%;
}

#menubutton li {
    display: inline;
}

#menubutton li a {
    font-family: Arial;
    font-size:11px;
    text-decoration: none;
    float:left;
    padding: 10px;
    background: #2175bc;
    color: #fff;
}

HTML:

<div id="menuspace">
<ul id="menubutton">
<li><a href="http://www.example.net/">Home</a></li>
</ul></div>

7 个答案:

答案 0 :(得分:2)

问题是#menubutton li a上的'float:left'。删除它,div将100%的屏幕。浮点使父div菜单空间认为其中确实没有包含内容(div实际上是100%但没有高度)。您也可以将浮动放在那里,只需添加一些内容:

<div id="menuspace">
<ul id="menubutton">
<li><a href="http://www.example.net/">Home</a></li>
</ul>Look the div goes to 100% now</div>

答案 1 :(得分:1)

试试这个小提琴 -

小提琴:http://jsfiddle.net/8LFLd/

演示:http://jsfiddle.net/8LFLd/embedded/result/

注意:我已在<a>标记上添加了鼠标悬停,以便它看起来更好。

答案 2 :(得分:0)

#menubutton li a中有一个浮点数,所以你必须清除他的父亲#menubutton。所以,写这样:

#menubutton{
 overflow:hidden;
}

答案 3 :(得分:0)

将菜单空间的css更改为:

#menuspace{ 
    background: #2175bc;padding:0;margin:0;overflow:auto;
}

你遇到这个问题的原因是因为浮标:留在li标签上。 overflow:auto on parent元素将清除浮点数(或者你可以在ul之后添加一个空div并设置样式以清除:两者都在其上)。

答案 4 :(得分:0)

至少有两种解决方法。

  1. 浮动#menuspace。 (fiddle
  2. ul申请float: none; clear: both后添加空div。 (fiddle
  3. 可能有更多方法可以完成您所追求的目标(如上文其他人所述)。

答案 5 :(得分:0)

答案 6 :(得分:0)

嗨,你不需要给出宽度,所有它将自动采取宽度深入细节检查它我的例子简单:

http://jsfiddle.net/U5JFE/7/