如何使
<li>
项目宽度适合 Bootstrap 3 中的文本长度?我的菜单项比文本短,这导致我的 class="active"
看起来很难看。
这是它发生的导航栏:
<div id="menu" class="col-md-1">
<ul class="nav nav-pills nav-stacked">
<li class="active"><a href="#">Startseite</a></li>
<li><a href="kontakt.php">Kontakt</a></li>
</ul>
</div>
当我尝试
display: inline-block;
时,它会移除子弹。
相反,我使用
float:left;
让它们仅与文本一样宽,同时保留项目符号。 (可选)添加 clear:both;
以将其保留为垂直列表,每个项目都在新行上。
CSS
.my-list > li {
float: left;
clear: both; /* remove this if you want them flowing inline */
}
HTML
<ul class="my-list">
<li>First Item</li>
<li>Second Item</li>
<li>Third Item</li>
<li>Fourth Item</li>
</ul>
如果
display: inline-block;
或 display: block;
弄乱了对齐。width: fit-content;
通过将
display: inline-block;
添加到适当的元素来防止它成为块。
如果您想要详细信息,请发布更多代码,最好是 CSS。
我让它可以与以下 css 一起使用:
ul {
margin: 0 auto;
width: fit-content;
}
li{
display:flex;
margin: 0.5rem auto;
}
基本上我所做的就是使容器宽度适合内容。使用CSS hack来确保它会使用边距居中。在 li 标签中,我希望内容居中,所以我这样设置
使用
display: inline-block
折叠了我的列表项,这是我不想要的。使用 display: block; width: fit-content
就是解决方案。