我正在使用twitter-bootstrap,我发现以div
(link}为中心的.btn-group
相当困难。
通常,我使用
margin: 0 auto;
或
text-align: center;
将div中的内容居中,但是当内部元素具有属性float: left
时它不起作用,在这种情况下,属性{{1}}用于视觉效果。
答案 0 :(得分:73)
已编辑:自Bootstrap 3起已更改。请参阅下面的Bootstrap 3解决方案。
添加包装div是不可能的?
请看这个例子:http://jsfiddle.net/EVmwe/4/
代码的重要部分:
/* a wrapper for the paginatior */
.btn-group-wrap {
text-align: center;
}
div.btn-group {
margin: 0 auto;
text-align: center;
width: inherit;
display: inline-block;
}
a {
float: left;
}
在分区中包裹按钮组,并将div设置为文本对齐中心。还必须覆盖按钮组以显示内联块和继承宽度。
将锚点显示覆盖为内联块,而float:none也可能会起作用,正如@Andres Ilich所说。
Bootstrap 3更新
从Bootstrap 3开始,你有对齐类(如documentation所示)。您现在只需将text-center
类添加到父级。像这样:
<div class="text-center">
<ul class="pagination">
<li class="disabled"><a href="#">«</a></li>
<li class="active"><a href="#">1</a></li>
<li><a href="#">2</a></li>
<li><a href="#">3</a></li>
<li><a href="#">4</a></li>
<li><a href="#">5</a></li>
<li><a href="#">»</a></li>
</ul>
</div>
请参阅此处的工作示例:http://jsfiddle.net/EVmwe/409/
答案 1 :(得分:73)
这对我有用(Bootstrap 3):
<div class="text-center">
<div class="btn-group">
<a href=1 class="btn btn-small">1</a>
<a href=1 class="btn btn-small">2</a>
<a href=1 class="btn btn-small">3</a>
</div>
</div>
答案 2 :(得分:14)
或添加“以分页为中心”,例如:
<div class="btn-toolbar pagination-centered">
<div class="btn-group">
<a href=1 class="btn btn-small">1</a>
<a href=1 class="btn btn-small">2</a>
<a href=1 class="btn btn-small">3</a>
</div>
</div>
答案 3 :(得分:7)
for bootstrap 4
git diff-index --quiet HEAD || git commit -am 'Jolly ol commit message'
答案 4 :(得分:6)
只需将您的按钮链接声明为inline-block
而不是float:left
,您的text-align:center
声明即可生效,如下所示:
.btn-group a {
display:inline-block;
}
答案 5 :(得分:6)
自Twitter Bootstrap 3以来,不需要任何解决方法。只需为父元素指定text-align: center
。
答案 6 :(得分:4)
如果有人也想改变.btn-group的宽度,你可以做min-width而不是width。我这样做了:
HTML:
<div class="text-center">
<div class="btn-group">
<button class="btn">1</button>
<button class="btn">2</button>
</div>
</div>
CSS:
.btn-group {min-width: 90%;}
.btn {width: 50%;}
将btn-group宽度设置为文本中心的90%,每个包含按钮为按钮组的50%(文本中心div的45%)。
答案 7 :(得分:1)
<div class="btn-group mx-auto" role="group">
<a href="#" class="btn btn-outline-primary"> Button 1</a>
<a href="#" class="btn btn-outline-primary"> Button 2</a>
</div>
答案 8 :(得分:0)
在Bootstrap 3中,您只需要构建如下所示的简单结构
<div class="btn-toolbar">
<div class="btn-group">
<button onclick="#" type="button" class="btn btn-default btn-sm">
Click 1
</button>
<button onclick="#" type="button" class="btn btn-default btn-sm">
Click 2
</button>
<button onclick="#" class="btn btn-default btn-sm" type="button">
Click 3
</button>
<button onclick="#" type="button" class="btn btn-default btn-sm">
Click 4
</button>
<button onclick="#" type="button" class="btn btn-default btn-sm">
Click 5
</button>
<button onclick="#" type="button" class="btn btn-default btn-sm">
Click 6
</button>
</div>
</div
并且只修改了这个样式(覆盖引导程序),它强制浮动,这样你就不能用边距或文本中心强制执行:
.btn-toolbar .btn-group {float:initial;}
这对我有用,没有太大的改变。
答案 9 :(得分:0)
将btn-group扔在p标签中,并使用text-align:center style for p {}
p {
text-align: center;
}
<p>
<div class="btn-group" role="group" aria-label="...">
<button type="button" class="btn btn-default">Left</button>
<button type="button" class="btn btn-default">Middle</button>
<button type="button" class="btn btn-default">Right</button>
</div>
</p>
答案 10 :(得分:0)
这在Bootstrap v3.3中帮了我大忙
.btn-group {
margin: auto;
display: flex;
flex-direction: row;
justify-content: center;
}