【发布时间】:2013-08-08 15:44:42
【问题描述】:
我的网站有一个标题和一个菜单栏。 我想将它们水平放置,如下所示:
HEADER
MENU
但是会发生什么:
HEADER
WHITE SPACE
MENU
我的标题代码:
<div id="headersecure" class="clearfix">
<div class="headeritem"><a href="#">Uitloggen</a></div>
<div class="headeritem"><a href="#" onclick="loadX()">X</a></div>
<div class="headeritem headerfoto"><a href="#" onclick="loadX(()">Test</a></div>
<div class="headeritem"><a href="#" onclick="loadQ()">W</a></div>
<div class="headeritem"><a href="#" onclick="loadQC()">Contact</a></div>
</div>
标题css代码:
#headersecure {
padding-left: 10%;
width: 90%;
min-width: 1024px;
height: 40px;
z-index: 1;
font-family: LANENAR;
}
.headeritem {
height: 100%;
padding-right: 30px;
float: right;
padding-top: 10px;
color: #FFF;
}
我的菜单栏的代码:
<div id="headermenu" class="clearfix">
<div class="menuitem"><a href="#" onmouseover="" onclick="loadA()"><img src="images/a.png">A</a></div>
<div class="menuitem"><a href="#" onmouseover="" onclick="loadB()"><img src="images/b.png">B</a></div>
<div class="menuitem"><a href="#" onmouseover="" onclick="loadC()"><img src="images/c.png">C</a></div>
<div class="menuitem"><a href="#" onmouseover="" onclick="loadD()"><img src="images/d.png">D</a></div>
<div class="menuitem"><a href="#" onmouseover="" onclick="loadE()"><img src="images/e.png">E</a></div>
<div class="menuitem"><a href="#" onmouseover="" onclick="loadF()"><img src="images/f.png">F</a></div>
<div class="menuitem"><a href="#" onmouseover="" onclick="loadG()"><img src="images/g.png">Test12313131311</a></div>
</div>
菜单的css代码:
#headermenu {
padding-left: 10%;
width: 90%;
min-width: 1024px;
top: 40px;
height: 25px;
font-family: LANENAR;
}
.menuitem {
height: 25px;
width: 8%;
float: left;
color: #FFF;
}
clearfix css 代码:
.clearfix:before,
.clearfix:after {
content: " ";
display: table;
}
.clearfix:after {
clear: both;
}
.clearfix {
*zoom: 1;
}
因为它们都使用浮动,所以每当菜单项与标题项位于同一水平面上时,它们就会开始以错误的方式定位。
除了使用 class: clearfix 之外,我还尝试在它们之间放置一个 div,如下所示:
<div style="clear:both;"> </div>
我的问题是,这两种解决方案都会在菜单和标题之间创建一个空白区域。 我还尝试将所有边距、填充等设置为 0,但这没有帮助。
// 编辑:使用 div 样式清除两者:http://jsfiddle.net/XJ3QE/3/ 截图:
// 编辑:Chrome 28 中的屏幕截图
【问题讨论】:
-
这是一个带有您的代码的 jsFiddle:jsfiddle.net/XJ3QE 那里没有空格。也许有其他东西干扰了您的 CSS?
-
那是因为菜单项与标题项的水平位置不同。我编辑了上面的代码,而不是使用 menuitem G,我把它做成了 Test12313131311,作为一个例子。现在你知道出了什么问题了。
-
仍然没有空白。您如何提供一个显示问题的 jsFiddle 而不是我试图重现您的错误?
-
对不起...给你:jsfiddle.net/XJ3QE/2 在 Firefox 11 中运行良好,但在 Chrome 中出现问题
-
Chrome 28、Firefox 22 或 IE 10 中没有空格。顺便说一下,您的
img标签没有关闭。可以发个截图吗?
标签: css css-position clearfix