【发布时间】:2020-05-29 01:48:51
【问题描述】:
我想在我正在开发的网站上创建一个栏以沿着框的顶部显示。
这是我的代码,我不断得到这个重叠
.page {
display: flex;
flex-wrap: wrap;
position: relative;
}
.section {
border: 2px solid #FBA7FF;
width: 85%;
height: 30%;
margin: 1vw;
padding: 1vw;
display: flex;
align-items: center;
position: relative;
z-index: 1;
}
.section h1 {
position: relative;
}
.section_header {
border: 4px solid #FBA7FF;
position: absolute;
top: 0;
left: 0;
width: 100%;
bottom: 95%;
}
<div class='page'>
<div class='section'>
<div class="section_header"></div>
<h1>sample text</h1>
</div>
</div>
到目前为止,我已经获得了具有 position: relative 的父 div 和具有 position: absolute 的子元素,然后将顶部和左侧设置为 0 宽度到 100% 和底部到 95% 以尝试所需的效果,但它会产生重叠.
我可以看到 0 在 div 内,并且没有考虑边框,这可能就是发生这种情况的原因。
【问题讨论】:
-
你为什么要绝对定位标题? - 删除它并尝试使用
flex-direction:column -
使子元素定位到父元素的左中,使用绝对作为父元素设置为相对。