我有以下布局http://jsbin.com/joyetaqase/1/edit?html,css,output
.col
使用flexbox我试图为<p>
div设置相同的高度和相同的宽度。
我的问题是:我怎样才能将<p>
放在盒子的底部?
布局应如下所示:
我知道我可以使bottom:0;
绝对并使用Arrays.sort()
但我想用flexbox实现这一点,是否可能?
有人可以解释一下吗?
答案 0 :(得分:2)
您可以采取以下方式。将display: flex;
flex-direction: column;
提供给
.col
和flex: 1 0 auto;
到h2
.row {
width: 500px;
font-family: monospace;
display:flex;
}
.col {
width: 50%;
border: 1px solid #000;
padding: 10px;
box-sizing: border-box;
display: flex;
flex-direction: column;
}
h2, p {
font-weight: normal;
margin: 0;
}
h2 {
flex: 1 0 auto;
}
<div class="row">
<div class="col">
<h2>Lorem Ipsum is simply dummy text of the printing and typesetting industry.</h2>
<p>my footer</p>
</div>
<div class="col">
<h2>Lorem Ipsum.</h2>
<p>my footer</p>
</div>
</div>
<强> Updated JSBin 强>
答案 1 :(得分:1)
使.col
成为嵌套的列方向flex容器。
.col {
width: 50%;
border: 1px solid #000;
padding: 10px;
box-sizing: border-box;
/* NEW */
display: flex;
flex-direction: column; /* stack <h2> and <p> vertically */
justify-content: space-between; /* align <h2> at top and <p> at bottom */
}
答案 2 :(得分:0)
为父母(.col
)提供相对定位,然后使用属性bottom:0px;
为页脚提供绝对定位。
.col {
width: 50%;
border: 1px solid #000;
padding: 10px;
box-sizing: border-box;
position:relative;
}
p{
position:absolute;
bottom:0px;
}