如何使用引导程序给按钮之间留出间距


79

我想给按钮之间留一个间距,有没有一种方法可以使用自举来给间隔,以便它们在不同的屏幕分辨率下保持一致。

我尝试使用margin-left但这是正确的方法吗?

这是演示

HTML:

<div class="btn-toolbar text-center well">
    <button type="button" class="btn btn-primary btn-color btn-bg-color btn-sm col-xs-2 margin-left">
      <span class="glyphicon glyphicon-plus" aria-hidden="true"></span> ADD PACKET
    </button>
    <button type="button" class="btn btn-primary btn-color btn-bg-color btn-sm col-xs-2 margin-left">
      <span class="glyphicon glyphicon-edit" aria-hidden="true"></span> EDIT CUSTOMER
    </button>
    <button type="button" class="btn btn-primary btn-color btn-bg-color btn-sm col-xs-2 margin-left">
      <span class="glyphicon glyphicon-time" aria-hidden="true"></span> HISTORY
    </button>
    <button type="button" class="btn btn-primary btn-color btn-bg-color btn-sm col-xs-2 margin-left">
      <span class="glyphicon glyphicon-trash" aria-hidden="true"></span> DELETE CUSTOMER
    </button>
</div>

CSS:

.margin-left{
    margin-left: 80px !important;
}

是的,或者您可以使用col-sm-offset或类似的方法
ppascualv 2014年

按钮大小应独立。看一下伙计们(www.bootply.com/dDfIHeZizW),如果我更改按钮的宽度,它们的对齐方式会变形。
vaibhav jain 2014年

在尝试了各种解决方案并获得其他人的反馈后,##bootstrap IRC我决定暂时使用margin-left。谢谢大家……
vaibhav jain 2014年


Answers:


100

您可以使用bootstrap Spacing实现。Bootstrap间距包括各种速记响应边距和填充。在下面的示例中,mr-1margin或设置padding$spacer* .25。

例:

<button class="btn btn-outline-primary mr-1" href="#">Sign up</button>
<button class="btn btn-outline-primary" href="#">Login</button>

您可以在Bootstrap Spacing上阅读更多内容。


10
刚刚添加了mr-1和臂杆。谢谢@ A.Raza。
ImFarhad

7
这是bootstrap4的
Hassaan

是的,这是针对“ twbs 4.x”的。
阿西夫·拉扎

3
谢谢,这就是我想要的!
Nahuel Gonzalez

spacer在Bootstrap中定义的吗?
括号

66

HTML:

<input id="id_ok" class="btn btn-space" value="OK" type="button">
<input id="id_cancel" class="btn btn-space" value="Cancel" type="button">

CSS:

.btn-space {
    margin-right: 5px;
}

1
即使没有明确提及,OP仍意味着他们希望连续放置按钮上的装订线。此解决方案将破坏引导程序的网格,导致按钮的总和占宽度100%,从而开始自动换行。
papiro

13
  1. 将您的按钮包装在div中class='col-xs-3'(例如)。
  2. 添加class="btn-block"到您的按钮。

这将提供永久的间距。


但是,如果使用类=“COL-XS-2”,而不是class='col-xs-3'定向扭曲...
Vaibhav的耆那

当您希望按钮在较小的分辨率下彼此环绕时,这也有帮助。“要将内容与默认网格嵌套在一起,请在现有的.col-sm- *列中添加一个新的.row和一组.col-sm- *列。”-来源:getbootstrap.com/docs/3.4/css
Fanky

10

如果要使用边距,请删除每个按钮上的类,然后使用:last-child CSS选择器。

HTML:

<div class="btn-toolbar text-center well">
    <button type="button" class="btn btn-primary btn-color btn-bg-color btn-sm col-xs-2">
      <span class="glyphicon glyphicon-plus" aria-hidden="true"></span> ADD PACKET
    </button>
    <button type="button" class="btn btn-primary btn-color btn-bg-color btn-sm col-xs-2">
      <span class="glyphicon glyphicon-edit" aria-hidden="true"></span> EDIT CUSTOMER
    </button>
    <button type="button" class="btn btn-primary btn-color btn-bg-color btn-sm col-xs-2">
      <span class="glyphicon glyphicon-time" aria-hidden="true"></span> HISTORY
    </button>
    <button type="button" class="btn btn-primary btn-color btn-bg-color btn-sm col-xs-2">
      <span class="glyphicon glyphicon-trash" aria-hidden="true"></span> DELETE CUSTOMER
    </button>
</div>

CSS:

.btn-toolbar .btn{
    margin-right: 5px;
}
.btn-toolbar .btn:last-child{
    margin-right: 0;
}

4

取决于您想要多少空间。我不确定我是否同意在每一个之间添加“ col-XX-1”的逻辑,因为然后您将在每一个之间定义整个“列”。

如果您只想在每个按钮之间留一点间距,我想在包围的行中添加填充。这样,我仍然可以使用所有12列,同时在每个按钮之间都包含一个“空格”。

Bootply:http//www.bootply.com/ugeXrxpPvD


@brauliobo将您的答案作为答案,因为我认为这是正确的答案。
ganders

3

btn-primary-spacing对所有按钮使用类别删除margin-left类别

范例:

<button type="button" class="btn btn-primary btn-color btn-bg-color btn-sm col-xs-2 btn-primary-spacing">
  <span class="glyphicon glyphicon-plus" aria-hidden="true"></span> ADD PACKET
</button>

CSS将像:

.btn-primary-spacing 
{
margin-right: 5px;
margin-bottom: 5px !important;
}

2
这个班btn-primary-spacing是从哪里来的?
ToniTornado

1
看起来像一个自定义实现。一些代码在这里会很好
Markus Graf


2

在按钮上增加页边距使其更宽,从而使按钮适合网格系统。如果仅视觉效果很重要,则为按钮提供一个白色边框,边框为[style =“ margin:0px; border:solid white;”],这不会影响按钮的宽度。


2

原始代码大部分在那儿,但是btn-group每个按钮周围都需要。在Bootstrap 3中,您可以使用btn-toolbar和btn-group来完成工作。我尚未完成BS4,但它具有类似的构造。

<div class="btn-toolbar" role="toolbar">
  <div class="btn-group" role="group">
    <button class="btn btn-default">Button 1</button>
  </div>
  <div class="btn-group" role="group">
    <button class="btn btn-default">Button 2</button>
  </div>
</div>

我实现了这一点,但是它没有为按钮提供垂直间距,当它们包裹在两行/“行”上时,这对我来说很明显。
-LeeC,

1

我对html很不好,但是我&nbsp;在按钮之间使用了它,效果很好。


奇怪的是,这对我来说比上面更复杂的解决方案好得多。
Max von Hippel

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.