由于某种原因,li 项目的左右边框不接触,它们之间大约有 4-5 px 的间隙。
#menucontainer {
display: block;
float: left;
width: 100%;
}
ul#menu {
display: block;
padding: 5px 0px 5px 15px;
}
ul#menu li {
display: inline;
padding: 3px;
border-right: 1px solid #D8D6FF;
border-left: 1px solid #D8D6FF;
margin: 0 !important;
}
ul#menu li a {
padding: 3px;
margin: 0;
}
<div id="menucontainer">
<ul id="menu">
<li>
<a href="google.com"></a>
</li>
<li>
<a href="google.com"></a>
</li>
<li>
<a href="google.com"></a>
</li>
</ul>
</div>
我正在使用 960 网格系统 CSS 重置(这似乎并没有改变我的问题)。我需要在 IE 7+ 和 Firefox 中正常工作 - IE8 和 FF 中存在问题。
For some reason the left and right borders of the li items do not touch there is about a 4-5 px gap between them.
#menucontainer {
display: block;
float: left;
width: 100%;
}
ul#menu {
display: block;
padding: 5px 0px 5px 15px;
}
ul#menu li {
display: inline;
padding: 3px;
border-right: 1px solid #D8D6FF;
border-left: 1px solid #D8D6FF;
margin: 0 !important;
}
ul#menu li a {
padding: 3px;
margin: 0;
}
<div id="menucontainer">
<ul id="menu">
<li>
<a href="google.com"></a>
</li>
<li>
<a href="google.com"></a>
</li>
<li>
<a href="google.com"></a>
</li>
</ul>
</div>
I am using the 960 grid system CSS reset (which doesn't seem to change my issue w/ or w/o it). I need to get this working in IE 7+ and Firefox - Issue exists in IE8 and FF.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
您正在使用
display: inline
。这意味着每个li
元素之间的空白字符都会受到尊重,并将被折叠成一个空格。如果需要,您可以尝试使用float
来代替,或者删除这些元素之间的所有空格。可以,或者如果您倾向于使用浮动,
而不是
display: inline
You're using
display: inline
. That means that whitespace characters between each of thoseli
elements are respected, and will be collapsed into a single space. If you need to, you can try usingfloat
s instead, or remove all whitespace between those elements.would work, or if you're inclined to using floats,
instead of
display: inline
遵循 Yi Jiang 的解决方案:
确保您确实没有任何空白。向左浮动可能会导致具有翻转
a:hover
的菜单出现问题。To follow on from Yi Jiang's solution:
ensures that you really don't have any white space. Floating left can cause problems in menus that have a rollover
a:hover
.您可以对外部
元素使用
display:flex
,而不是对使用
-标签。display:inline
;标记
CSS
You can use
display:flex
for the outer<ul>
-element instead of usingdisplay:inline
for the<li>
-tags.Markup
CSS