为什么我的李元素之间有空间?

est*_*r h 3 css

我有一个水平显示的项目列表.我想在每个li周围创建一个边框,让它们紧挨着彼此.

我创建了一个小测试来说明问题,如下所示:

<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;
}
Run Code Online (Sandbox Code Playgroud)

简而言之 - 列表项之间存在空格.我希望它们彼此相邻,现在我只能通过在li项目上设置margin-left = -3px来实现这一点.

知道发生了什么事吗?我觉得我错过了一些明显的东西!

Jar*_*ish 5

据我所知,你设置的lidisplay: 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>
Run Code Online (Sandbox Code Playgroud)

http://jsfiddle.net/8F2XY/2/

这是不存在之间的空白的liS和悫的liS和a修复该代码,为s.

现在,如果你float: left,元素将变成一个display: block将在显示中向左流动的元素.空白将被忽略.

所以:

.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;
}
Run Code Online (Sandbox Code Playgroud)

http://jsfiddle.net/8F2XY/