当侧边项目具有不同的宽度时,保持中间项目居中。
- 论坛
- 当侧边项目具有不同的宽度时,保持中间项目居中。
7 浏览
当侧边项目具有不同的宽度时,保持中间项目居中。
想象一下以下的布局,其中点表示盒子之间的空间:
[左盒子]......[中间盒子]......[右盒子]
当我移除右盒子时,我希望中间盒子仍然居中,如下所示:
[左盒子]......[中间盒子]................
同样,如果我移除左盒子,也是一样的效果:
................[中间盒子]................
现在,当中间盒子中的内容变得更长时,它会占用尽可能多的可用空间,同时保持居中。左右盒子不会缩小,因此当没有空间时,会使用overflow:hidden和text-overflow:ellipsis来截断内容。
[左盒子][中间盒子xxxxxxxxxxxx][右盒子]
以上是我理想的情况,但我不知道如何实现这种效果。因为当我创建一个flex结构时:
.parent {
display : flex; // 弹性盒子
justify-content : space-between; // 水平对齐
align-content : center; // 垂直对齐
}
如果左右盒子的大小完全相同,我可以得到期望的效果。然而,当其中一个盒子大小不同时,居中的盒子就不再真正居中了。
有人能帮帮我吗?
更新:
justify-self会很好,这样就理想了:
.leftBox {
justify-self : flex-start;
}
.rightBox {
justify-self : flex-end;
}