我正在使用引导框架,并试图获得一个图像水平居中没有成功。

我尝试了各种技术,如将12个网格系统分成3个相等的块

<div class="container">
    <div class="row">
      <div class="span4"></div>
      <div class="span4"><img src="logo.png" /></div>
      <div class="span4"></div>
    </div>
</div>

让图片相对于页面居中最简单的方法是什么?


当前回答

Twitter Bootstrap v3.0.3有一个类:center-block

中心内容块 设置要显示的元素:块和居中通过边距。可作为mixin和类使用。

只需要在img标签中添加一个类.center-block,如下所示

<div class="container">
  <div class="row">
    <div class="span4"></div>
    <div class="span4"><img class="center-block" src="logo.png" /></div>
    <div class="span4"></div>
  </div>
</div>

在Bootstrap中已经有css样式调用.center-block

.center-block {
    display: block;
    margin-left: auto;
    margin-right: auto;
 }

你可以看到这里的一个样本

其他回答

您可以更改之前解决方案的CSS如下所示:

.container, .row { text-align: center; }

这也应该将父div中的所有元素居中。

只需使用下面的引导类来修复它

<img class="mx-auto d-block" src="../path/to/.." alt="Image">

在 Bootstarp 5.0 中

Use

.mx-auto .d-block

你可以在引导img类中使用margin属性。

.name-of-class .img-responsive { margin: 0 auto; }

我也需要同样的东西,在这里我找到了解决方案:

https://stackoverflow.com/a/15084576/1140407

<div class="container">
  <div class="row">
    <div class="span9 centred">
      This div will be centred.
    </div>
  </div>
</div>

和CSS:

[class*="span"].centred {
  margin-left: auto;
  margin-right: auto;
  float: none;
}