一个盒子中有两个项目,我正在尝试将第一个项目对准该盒子的顶部,将最后一个项目对准该盒子的底部。我知道我可以使用flexbox轻松做到这一点:
.container {
height: 150px;
width: 100%;
background-color: lime;
display: flex;
flex-direction: column;
justify-content: space-between;
}
<div class="container">
<div>Top text</div>
<div>Bottom text</div>
</div>
不幸的是,我使用的平台(一些旧的html到pdf生成器)不支持flexbox。没有使用flexbox的方法还有另一种方法吗?
答案 0 :(得分:1)
只需按照以下方法使用相对和绝对位置即可。希望对您有帮助。
.container > div {
position: absolute;
bottom: 0;
}
.container > div.top {
bottom: inherit;
top: 0;
}
.container {
height: 150px;
width: 100%;
background-color: lime;
position:relative;
}
<div class="container">
<div class="top">Top text</div>
<div>Bottom text</div>
</div>
答案 1 :(得分:1)
您可以使用CSS定位属性。
.container {
position: relative;
height: 150px;
width: 100%;
background-color: lime;
}
.container > div {
position: absolute;
}
.container > div:first-child {
top: 0; /* optional */
}
.container > div:last-child {
bottom: 0;
}
<div class="container">
<div>Top text</div>
<div>Bottom text</div>
</div>
只需注意,绝对定位的元素将从文档流中删除。这意味着他们不尊重周围元素所占据的空间,这可能导致重叠。
答案 2 :(得分:0)
这是考虑表格的另一个想法,您的元素将保持在其中:
.container {
height: 150px;
width: 100%;
background-color: lime;
display: table;
}
.container > div {
display:table-row;
}
.container > div:first-child {
height:100%;
}
<div class="container">
<div>Top text</div>
<div>Bottom text</div>
</div>