我试图将一个 div 放在我的页面的中心,并将另一个附加到窗口的右侧,如下所示:
header
|----------------------|
| _______ _____|
| | | | ||
| | | | ||
| | div a | | b ||
| | | | ||
| |_______| |___||
|----------------------|
footer
div a 使用 margin: 0 auto 定位; div b 需要与 div a 的高度相同。我可以让它与 position:absolute 一起工作,但它会将我的页脚拉到我的 div 下方。这是我目前拥有的:
#a{
margin: 0 auto;
width: 800px;
border: 1px solid green;
padding-top: 30px;
padding-left: 10px; padding-right: 10px;
}
#b{
position: absolute;
display:block;
right:0;
width: 300px;
border: 1px solid blue;
padding-right: 15px;
margin-left: 10px;
background-color: #fff;
}
现在,div b 在右边,但在 div a 下面。如何在不让我的页脚受到绝对定位影响的情况下垂直对齐它们?
最佳答案
您的问题似乎是绝对定位的 div 没有相对定位的父级。
你可以试试这个:
.container
{
position:relative;
}
#a
{
margin: 0 auto;
width: 800px;
border: 1px solid green;
padding-top: 30px;
padding-left: 10px; padding-right: 10px;
}
#b
{
position: absolute;
display:block;
right:0;
top:0;
width: 300px;
border: 1px solid blue;
padding-right: 15px;
margin-left: 10px;
background-color: #fff;
}
那么您的 html 将如下所示:
<div class="container">
<div id="a"></div>
<div id="b"></div>
</div>
关于css - 中心和右侧 div 定位,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18166037/