【发布时间】:2015-12-18 02:29:18
【问题描述】:
我的实际问题更复杂,但归结为这一点。如何使用 CSS 禁止相对定位的 div 堆叠在绝对定位的 div 上。
问题示例:
<div id="absolute"></div>
<div id="relative"></div>
div{
width: 100px;
height: 100px;
opacity: .5;
}
#absolute{
position: absolute;
background-color: red;
}
#relative{
position: relative;
background-color: blue;
}
这可以用 css 实现吗?因此,相对定位的 div 将被向下或向一侧推,直到它不再覆盖另一个绝对定位的 div。基本上,相对 div 就像绝对 div 是相对的一样。
要添加一些性质的细节做问题:
我有一个网页,其顶部和左侧有一个绝对定位的菜单。然后我有一个 div,我在其中注入模板(Angular)。问题是模板最终位于菜单下。我试图应用边距或填充,但正在弄乱我的引导网格。所以我希望菜单可以被视为相对于主 div 而言是相对的,但仍保持原位。
【问题讨论】:
-
一个绝对定位的元素从文档流中移除,这意味着它不会影响其他元素。使用纯 CSS 是不可能的。
-
但是,如果你嵌套元素,你可以将
top: 100%添加到相对定位的元素 - codepen.io/anon/pen/NxNjGQ
标签: html css position absolute