我的问题是如何使药丸居中?
我试图在周围添加中心块并更改float:left
为float:center
但没有任何帮助。
这变得简单多了!你只需要使用text-center
容器上的类,并应用display:inline-block
到ul
. 只需确保您有一个换行符或段落标签将导航与容器内的任何其他元素分开。
完毕!2 类添加,1 行 CSS(不要修改引导 css 文件!)。
HTML:
<div class="col-md-12 text-center">
<p>Copyright stuff</p>
<ul class="nav nav-pills center-pills">
<li><a href="#">Footer nav link</a></li>
<li><a href="#">Footer nav link</a></li>
</ul>
</div>
CSS:
.center-pills { display: inline-block; }
2015 年编辑:正如 Artur Beljajev 所提出的,Flexbox 支持现在已经很普遍了,您可能想改用它:
.center-pills {
display: flex;
justify-content: center;
}
如果您想在可变宽度容器中使用可变宽度药丸,我建议使用inline-block
显示类型并向药丸容器添加一个类。
这是我如何扩展引导程序以使药丸居中。
CSS:
.centered-pills { text-align:center; }
.centered-pills ul.nav-pills { display:inline-block; }
.centered-pills li { display:inline; }
.centered-pills a { float:left; }
* html .centered-pills ul.nav-pills { display:inline; } /* IE6 */
*+html .centered-pills ul.nav-pills { display:inline; } /* IE7 */
HTML:
<div class="row">
<div class="span12 centered-pills">
<ul class="nav nav-pills">
<li><a href="#">derek</a></li>
<li><a href="#">brooks</a></li>
<li><a href="#">is</a></li>
<li><a href="#">super</a></li>
<li class="active"><a href="#">awesome</a></li>
</ul>
</div>
</div>
或弹性盒方法:
.nav-pills {
display: flex;
justify-content: center;
}
如果您希望药丸居中而不是左对齐,则需要更改 css。您需要指定宽度并将边距更改为自动。
例如:
.tabs, .pills {
margin: 0 auto;
padding: 0;
width: 400px;
}
虽然@minaz 的答案适用于已知宽度的列表,但我会提出一个不同的解决方案,即使您更改列表的内容,它也确实有效:
.tabs, .pills {
text-align: center;
}
.tabs li, .pills li {
float: none;
}
或者在 SCSS 中:
.tabs, .pills {
text-align: center;
li { float: none; }
}
这将使列表内的文本居中,并重置float
列表项的属性,以便它们受text-align
属性影响。
Bootstrap 4的简单解决方案justify-content-center
在<ul>
导航中
使用
例子:
@import url('https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css')
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js"></script>
<div class="mt-5">
<ul class="nav nav-pills mb-3 justify-content-center" id="pills-tab" role="tablist">
<li class="nav-item">
<a class="nav-link active" id="pills-home-tab" data-toggle="pill" href="#pills-home" role="tab" aria-controls="pills-home" aria-selected="true">Home</a>
</li>
<li class="nav-item">
<a class="nav-link" id="pills-profile-tab" data-toggle="pill" href="#pills-profile" role="tab" aria-controls="pills-profile" aria-selected="false">Profile</a>
</li>
<li class="nav-item">
<a class="nav-link" id="pills-contact-tab" data-toggle="pill" href="#pills-contact" role="tab" aria-controls="pills-contact" aria-selected="false">Contact</a>
</li>
</ul>
<div class="tab-content" id="pills-tabContent">
<div class="tab-pane fade show active" id="pills-home" role="tabpanel" aria-labelledby="pills-home-tab">
<div class="card text-white bg-success mb-3 mx-2 px-2">
<h1>Hi</h1>
</div>
</div>
<div class="tab-pane fade" id="pills-profile" role="tabpanel" aria-labelledby="pills-profile-tab">
<div class="card text-white bg-info mb-3 mx-2 px-2">
<h1>Hi</h1>
</div>
</div>
<div class="tab-pane fade" id="pills-contact" role="tabpanel" aria-labelledby="pills-contact-tab">
<div class="card text-white bg-danger mb-3 mx-2 px-2">
<h1>Ni Hao</h1>
</div>
</div>
</div>
</div>
Bootstrap 4 解决方案非常简单:
<ul class="nav justify-content-center">