Bootstrap 4折叠菜单徽章右侧对齐问题求助(Bootstrap3迁移后)
解决Bootstrap 4折叠菜单徽章对齐问题
我帮你排查了下代码,问题出在父级<a>标签的flex-column类上——这个类会把内部元素设置为垂直排列,导致徽章没法和文本横向对齐靠右。咱们只需要调整一下flex布局的属性就能搞定:
修改方案
把父<a>标签的flex-column替换成d-flex justify-content-between align-items-center,这样就能让文本靠左、徽章靠右,同时保持垂直居中:
<div className="list-group"> <a href="#Expamle" data-toggle="collapse" className="list-group-item list-group-item-action d-flex justify-content-between align-items-center"> Example <span className="badge badge-default badge-pill">3</span> </a> <div id="Expamle" className="collapse"> <div className="d-flex w-100 justify-content-between"> <label className="list-group-item list-group-item-action flex-column">Example list-item-1</label> </div> <div className="d-flex w-100 justify-content-between"> <label className="list-group-item list-group-item-action flex-column">Example list-item-2</label> </div> <div className="d-flex w-100 justify-content-between"> <label className="list-group-item list-group-item-action flex-column">Example list-item-3</label> </div> </div> </div>
原理说明
d-flex:把元素设置为flex容器,让内部元素默认横向排列justify-content-between:让容器内的元素分别靠向左右两端,自动填充中间空白空间align-items-center:保证文本和徽章在垂直方向上居中对齐,避免出现错位
如果之后需要微调徽章的左侧间距,也可以给徽章单独加ml-auto类(等同于margin-left: auto),效果和justify-content-between类似,适合只有两个元素的场景。
内容的提问来源于stack exchange,提问作者MariaT
相关产品推荐
相关产品推荐

