【发布时间】:2015-05-27 00:16:23
【问题描述】:
所以我在具有可变宽度的 div 中有可变数量的元素。里面的元素之间有一个固定的间距,5px,但是每个元素都需要扩展,用padding填满外层div空间的全宽,这样就可以让文字居中了。
例子:
.button-container{
width: 100%;
height: 50px;
}
.button-container .button{
min-width: 75px;
display: inline-block;
text-align: center;
border: 1px solid #FF0000;
}
.button-container .button + .button-container .button{
margin-left: 5px;
}
<div class='button-container'>
<div class='button'>B1</div>
<div class='button'>B2</div>
<div class='button'>B3</div>
<div class='button'>B4</div>
</div>
那么如何使按钮类元素内部的填充具有动态的左右填充来填充按钮容器类 div 的空间?
理想情况下,该解决方案将是一个纯 CSS 解决方案,因为我不想让 jQuery 来做间距。
【问题讨论】:
-
所以您希望按钮分布在父级的整个宽度上,并且只调整它们之间的空间,或者您希望按钮适应宽度?
-
边距是静态的,但是边框内的左右内边距需要展开以填满按钮容器的整个宽度。
-
在这种情况下,使用 flexbox。但请注意,旧浏览器不支持此功能(afaik IE caniuse.com/#search=flex,因此请为这些浏览器创建后备。 IE10 需要 2012 版的 flexbox 语法。
-
有一点虽然Divs are not buttons
-
Paulie_D 的观点非常好。它们仅用于演示目的。
标签: css