我有一个水平显示的项目列表。我想在每个里周围创建一个边框,并使它们彼此相邻地突出。
我创建了一个小测试来说明问题,在这里看到:
<ul class="dashboard_inline_links">
<li><a href="#">October - 0</a></li>
<li><a href="#">November - 0</a></li>
<li><a href="#">December - 765</a></li>
<li><a href="#">January - 0</a></li>
<li><a href="#">February - 756</a></li>
<li><a href="#">March - 2</a></li>
</ul>
.dashboard_inline_links li {
border-style: solid;
border-width: 1px;
display: inline;
padding: 4px 8px;
}
.dashboard_inline_links a {
border-color: transparent #C6D3F0;
border-style: solid;
border-width: 1px;
color: #28478E;
display: inline-block;
margin: 0;
padding: 0;
}
简而言之 - 列表项之间有空格。我希望它们彼此相邻,现在我只能通过在 li 项上设置 margin-left = -3px 来实现这一点。
知道发生了什么吗?我觉得我错过了一些明显的东西!
据我所知,你正在设置li
to be display: inline
,这意味着它将被视为段落中的文本。因此,white-space
元素之间成为您视觉上看到的空间。
这应该可以证明我的意思:http://jsfiddle.net/8F2XY/1/
请注意,以下“解决”了该问题:
<ul class="dashboard_inline_links">
<li><a href="#">October - 0</a></li><li><a href="#">November - 0</a></li><li><a href="#">December - 765</a></li><li><a href="#">January - 0</a></li><li><a href="#">February - 756</a></li><li><a href="#">March - 2</a></li>
</ul>
http://jsfiddle.net/8F2XY/2/
这是因为之间没有空格li
s 和之间li
s and a
按原样修复代码。
现在,如果你float: left
,该元素将变得像display: block
将在显示屏中向左流动的元素。空格将被忽略。
So:
.dashboard_inline_links {
border-bottom: 1px dotted #C6D3F0;
border-top: 1px dotted #C6D3F0;
display: inline-block; overflow: hidden;
padding: 6px 0;
width: 916px;
margin-top: -5px;
padding: 6px 0;
position: relative;
white-space: nowrap;
}
.dashboard_inline_links li {
list-style-type: none;
border-style: solid;
border-width: 1px;
float: left;
padding: 4px 8px;
}
.dashboard_inline_links a {
border-color: transparent #C6D3F0;
border-style: solid;
border-width: 1px;
color: #28478E;
display: block;
margin: 0;
padding: 0;
}
http://jsfiddle.net/8F2XY/
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)