我flexbox用于我的布局,在完成Flexbox Froggy之后,我尝试得到以下对齐方式:
我的想法如下:
<div>)需要在列中流动:flex-direction: column;align-content: flex-start;align-self: flex-end;<div class="container">
<div class="box1">
box 1
</div>
<div class="box2">
box 2
</div>
<div class="box3">
box 3
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
用CSS
.container {
display: flex;
flex-direction: column;
align-content: flex-start;
}
.box3 {
align-self: flex-end;
}
Run Code Online (Sandbox Code Playgroud)
但它不起作用 - 看起来第三个框被推(flex-end)向右而不是向下.
我的理解是align-self处理相对于容器的异常("容器从顶部对齐所有东西,但我,我自己,将对齐到底部").不是这样吗?
您不需要使用align-self,您可以使用margin-auto.
.container {
display: flex;
flex-direction: column;
align-content: flex-start;
height: 150px;
border:1px solid grey;
}
.box3 {
margin-top: auto;
background:lightgreen;
}Run Code Online (Sandbox Code Playgroud)
<div class="container">
<div class="box1">
box 1
</div>
<div class="box2">
box 2
</div>
<div class="box3">
box 3
</div>
</div>Run Code Online (Sandbox Code Playgroud)