更新2019-Bootstrap 4
“居中的内容”可能意味着许多不同的东西,并且自发布以来,Bootstrap居中已发生了很大变化。
水平中心
引导程序3
text-center用于display:inline元素
center-block以display:block元素为中心
col-*offset-* 居中网格列
- 查看此答案以使导航栏居中
演示Bootstrap 3水平居中
引导程序4
text-center仍用于display:inline元素
mx-auto替换center-block为中心display:block元素
offset-* 或 mx-auto可用于居中网格列
justify-content-center中row也可以用于居中col-*
mx-auto(自动x轴边距)将围绕display:block或display:flex具有一元件限定的宽度,( ,,% 等。)。默认情况下,在网格列上使用Flexbox,因此也有多种Flexbox居中方法。vwpx
演示 Bootstrap 4水平居中
垂直中心
现在,默认情况下,Bootstrap 4是flexbox,因此有许多不同的垂直对齐方法可以使用:auto-margins,flexbox utils或display utils以及vertical align utils。乍一看,“ vertical align utils”似乎很明显,但它们仅适用于内联和表显示元素。这是一些Bootstrap 4垂直居中选项。
1-使用自动页边距的垂直中心:
垂直居中的另一种方法是使用my-auto。这将使元素在容器内居中。例如,h-100使行全高,并使列my-auto垂直居中col-sm-12。
<div class="row h-100">
<div class="col-sm-12 my-auto">
<div class="card card-block w-25">Card</div>
</div>
</div>
使用自动边距演示的垂直中心
my-auto 代表垂直y轴上的边距,它等效于:
margin-top: auto;
margin-bottom: auto;
2-带Flexbox的垂直中心:

由于.row现在display:flex使用Bootstrap 4,因此您可以align-self-center在任何列上直接使用以使其垂直居中...
<div class="row">
<div class="col-6 align-self-center">
<div class="card card-block">
Center
</div>
</div>
<div class="col-6">
<div class="card card-inverse card-danger">
Taller
</div>
</div>
</div>
或者,align-items-center整体.row上使所有col-*行垂直居中对齐...
<div class="row align-items-center">
<div class="col-6">
<div class="card card-block">
Center
</div>
</div>
<div class="col-6">
<div class="card card-inverse card-danger">
Taller
</div>
</div>
</div>
垂直中心不同高度的列演示
3-使用显示实用程序的垂直居中:
自举4具有显示utils的,可以被用于display:table,display:table-cell,display:inline等。这些可与所使用的垂直取向utils的要对齐的内联,内联块或表格单元格的元件。
<div class="row h-50">
<div class="col-sm-12 h-100 d-table">
<div class="card card-block d-table-cell align-middle">
I am centered vertically
</div>
</div>
</div>
垂直中心使用显示实用程序演示