[英]how do i keep centered div with max-width from collapsing when using flexbox column?
我有3个div垂直堆放在容器中。 我希望中间div居中,但继续尽可能多地水平扩展但小于最大宽度。 就像普通的div一样,max-width没有涉及flexbox。
https://codepen.io/anon/pen/XaQXOW
CSS
.cont {
display: flex;
flex-direction: column;
}
.b {
max-width: 500px;
background-color: cyan;
}
.a, .b, .c {
border: 1px solid #000;
height: 100px;
}
HTML
<div class="cont">
<div class="a"></div>
<div class="b"></div>
<div class="c"></div>
</div>
设置align-self: center;
居中你的div并增加width: 100%
:
.cont { display: flex; flex-direction: column; } .b { max-width: 500px; background-color: cyan; align-self: center; width: 100%; box-sizing: border-box; } .a, .b, .c { border: 1px solid #000; height: 100px; }
<div class="cont"> <div class="a"></div> <div class="b"></div> <div class="c"></div> </div>
您可能希望使用margin-left和margin-right并将它们设置为auto
HTML
<div class="cont">
<div class="a"></div>
<div class="b"></div>
<div class="c"></div>
</div>
CSS
.cont {
display: flex;
flex-direction: column;
}
.b {
background-color: cyan;
max-width: 500px;
margin-left: auto;
margin-right: auto;
width: 100%;
}
.a, .b, .c {
border: 1px solid #000;
height: 100px;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.