因为示例规则:
http://jsfiddle.net/rudiedirkx/wgue7/
如何让酒吧到底部,而不是顶部?现在他们坚持在容器的顶部(#bars),但我想让他们坚持到底部。
如你所见,我不知道最高的酒吧的高度,所以我不知道容器的高度。
这些q a不帮:Vertically align floating divs,Vertically align floating DIVs
应该简单,对吧?如果它有帮助:它只需要工作在不错的浏览器。
PS。条数是可变的(不在示例中),它们的高度为。只有它们的宽度是静态的。定位绝对不会有帮助,因为容器div没有测量。
解决方法
This will do the trick:
#bars { display: table-cell; border: solid 1px black; } #bars > div { display: inline-block; vertical-align: bottom; width: 5px; background-color: #999; margin-left: 2px; } #bars > div:first-child { margin-left: 0; }
它使用display:table-cell;在父div,默认情况下有vertical-align:baseline;应用。这改变了对float的需要:left;对子div并允许我们使用display:inline-block ;.这也不需要你的CSS清除修复。
EDIT – Per @ thirtydot的评论,添加vertical-align:bottom;到子div去除底部的间隙。
因此,我改变了CSS和jsFiddle。我保持显示:table-cell;所以父div包装的孩子divs与0填充,看起来不错和snazzy!