【发布时间】:2017-11-18 17:38:58
【问题描述】:
我有这个代码
HTML
<div class="head">
<div class="menu">
</div>
<div class="search">
</div>
</div>
CSS
.head {
height:110px;
position:relative;
}
.menu {
float:left;
position:absolute;
bottom:0px;
}
.search {
float:right;
position:absolute;
bottom:0px;
}
我要做的是将div "menu" 放在div "head" 的左下角,将div "search" 放在div "head" 的右下角。
当我使用 "menu" 和 "head" 的位置和底部值时,它会完美地对齐菜单,但是当我尝试使用 "search" 做同样的事情时,它会将它扔到 "menu" 的顶部偏移一点。
这是一个图片示例 https://i.stack.imgur.com/KBUxw.png (“菜单” div 正确对齐,但“搜索”向左对齐,“菜单”顶部稍高)
去掉 position 和 bottom 值,只使用 float 将它们各自的边对齐,彼此内联,但不会将它们放在父 div 的底部。
我已经让它们与两侧对齐,但“搜索”div 仍然高于“菜单”(而不是在底部)。
这可能是因为它有一个带有输入搜索字段的表单。
编辑1
:我发现问题在于我实际上需要将搜索框与“搜索”的底部对齐。我尝试将此添加到 .searchbox
.searchbox {
vertical-align:bottom;
}
但这不起作用,bottom:0px; 也不起作用。
编辑2
:我找到了解决方案,因为我发现了问题实际上是什么。我不得不将此代码添加到分配给输入框的类中
position: absolute;
right: 0;
bottom: 0;
现在它运行良好。除了框外,“搜索”中没有任何其他内容,因此对齐 div“搜索”并不是什么大问题,因为现在输入框与“头部”对齐。谢谢大家!
【问题讨论】:
标签: html css position alignment