标题很长,不好意思。
<li>
通常,当我使用列表制作网格布局时,我在和上都有固定宽度<ul>
。然后我有一个左边距,<li>
然后我将其作为负左边距放在容器上,<ul>
从而将整个东西拉回并完美排列。
但我不能让它与百分比一起工作,我不明白。认为我遗漏了一些明显的东西。它应该在一行中放置 3 个项目!
每个 li 为 32%,连续三个为 96%,然后 2% 的左边距为 102%,然后在 ul 上的负边距为 -2% 以再次平衡。
一些 HTML
<div class="container">
<div class="row">
<ul>
<li><div class="inner">Item 1</div></li>
<li><div class="inner">Item 1</div></li>
<li><div class="inner">Item 1</div></li>
</ul>
</div>
</div>
一些 CSS
.container {
padding: 30px;
}
.row {
width: 100%;
overflow: hidden;
}
ul {
margin: 0 0 0 -2%;
padding: 0;
overflow: hidden;
}
li {
width: 32%;
float: left;
margin: 0 0 0 2%;
list-style: none;
}
.inner {
border: 1px solid #ccc;
padding: 10px;
}
还有一个厚脸皮的小提琴
http://jsfiddle.net/davidpauljunior/6DEv9/
这里的另一个小提琴展示了它是如何使用 PIXELS 和负边距的。目的是使 3 个项目完美地放在一条线上。 http://jsfiddle.net/davidpauljunior/6DEv9/5/