【发布时间】:2014-03-01 05:39:50
【问题描述】:
我需要在水平排列的 LI 项目中垂直对齐文本,但它们之间的边距需要为 1 px。如果我使用 display:table-cell 和 border-spacing:1 px 那么它们之间的空间最终是 2 像素。我希望我可以设置“border-spacing-right:1px”。有任何想法吗?下面是我的代码,其中第一组甚至没有对齐,也在小提琴中:http://jsfiddle.net/break68/SLDcU/3/
<style>
.nav1 li {
display: inline-block;
text-align: center;
vertical-align: middle;
height:40px;
width:50px;
background-color:#777;
margin-right:1px;
list-style: none;
float: left;
padding:2px;
}
.nav2 li {
display: table-cell;
text-align: center;
vertical-align: middle;
height:40px;
width:50px;
margin-right:1px;
background-color:#777;
list-style: none;
padding:2px;
border: 1px solid white;
border-spacing: 1px;
}
</style>
<ul class="nav1">
<li>one</li>
<li>two<br /> lines</li>
<li>three</li>
</ul>
<ul class="nav2">
<li>one</li>
<li>two<br /> lines</li>
<li>three</li>
</ul>
【问题讨论】:
-
我错过了什么吗?您链接的小提琴在每个 li 之间有 1px 的边距。
-
margin-right:1px;加边框:1px纯白色;等于两个像素间隙
标签: css vertical-alignment css-tables