【发布时间】:2015-04-18 05:11:10
【问题描述】:
你可以使用 css calc 使 5 个 20% 宽度的 div 连续浮动,等于 100%。我的目标是让 5 个 div 向左浮动,每个 div 之间留有 1% 的边距。目前我必须使用 first-of-type 从第一个 div 中删除边距,以尝试将其与容器的左侧完美对齐。使用 calc 方法有更好的解决方案吗?我想我的问题是我不知道在哪里将边距包含在 cacl 中。
ul {
width:500px;
}
li {
width:calc(100%/5);
background:blue;
float:left;
list-style:none;
margin-left:1%;
}
li:first-of-type{
margin-left:0px;
}
<ul>
<li>1</li>
<li>2</li>
<li>3</li>
<li>4</li>
<li>5</li>
</ul>
【问题讨论】:
-
jsfiddle.net/qrd702dj/1 我永远无法将小提琴正确连接起来
-
您有什么理由使用
calc?100% / 5只会产生 20%,那么为什么不首先使用 20% 呢?还是我在这里遗漏了什么? -
如果我这样做,我认为所有 5 个 div 都将相邻且之间没有边距。我想知道 calc 方法是否可以 100% 下降 5,然后还包括它们之间的边距,但不能在第一个或最后一个 div 边接触边缘。我正在考虑的另一个解决方案是将 box-sizing:padding-box 添加到 div 并为它们提供所有填充以使其看起来好像每个 div 之间都有空间。但话又说回来,第一个和最后一个 div 不会接触容器的侧面,会有一点间隙。