作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想要图 2 而不是图 1。在图 1 中,菜单和图像与顶部对齐,但我希望它们与底部对齐。
这是我的 CSS:
<div id="branding">
<div class="brand-left"></div>
<div class="brand-right"></div>
</div>
#branding {
display: inline-block;
width: 100%;
}
.brand-left {
position: relative;
float: left;
width: 730px;
}
.brand-right {
text-align: right;
width: 222px;
float: left;
}
最佳答案
您可以使用 display: flex
实现此行为。您所要做的就是将此规则添加到您的 branding
div 中:
#branding {
display: flex; /* ADDED */
align-items: flex-end; /* ADDED */
width: 100%;
border: 1px solid green;
}
这是一个片段
#branding {
display: flex;
width: 100%;
border: 1px solid green;
align-items: flex-end;
}
#branding > div{
border: 1px solid blue;
}
.brand-left {
position: relative;
float: left;
width: 730px;
}
.brand-right {
text-align: right;
width: 222px;
float: left;
}
<div id="branding">
<div class="brand-left">content</div>
<div class="brand-right">
<img src="http://senda-arcoiris.info/images/100x100.gif"/>
</div>
</div>
另一种不使用 flex
的解决方案是从子 div 中删除 floats
并将它们定位为绝对位置。请看下面的片段:
#branding {
position: absolute; /* ADDED */
width: 100%;
border: 1px solid green;
}
#branding > div{
position: relative; /* ADDED */
display: inline-block; /* ADDED */
border: 1px solid blue;
bottom: 0;
}
.brand-left {
width: 330px; /* I changed the width in order to fit in the snippet */
}
.brand-right {
text-align: right;
width: 222px;
}
<div id="branding">
<div class="brand-left">content</div>
<div class="brand-right">
<img src="http://senda-arcoiris.info/images/100x100.gif"/>
</div>
</div>
关于html - 如何让两个并排的 div 对齐到底部?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36566773/
我是一名优秀的程序员,十分优秀!