我发现当我将元素定位固定时,无论父元素是否相对定位,它都会相对于窗口定位固定?
#wrapper {
width: 300px;
background: orange;
margin: 0 auto;
position: relative;
}
#feedback {
position: fixed;
right: 0;
top: 120px;
}
<div id="wrapper">
...
<a id="feedback" href="#">Feedback</a>
</div>
原文由 Jiew Meng 发布,翻译遵循 CC BY-SA 4.0 许可协议
让我为这两个可能的问题提供答案。请注意,您现有的标题(和原始帖子)提出的问题不同于您在编辑和后续评论中寻求的问题。
要相对于父元素定位元素“固定” ,您需要在子元素上使用
position:absolute
,以及在父元素上使用除默认或静态以外的任何位置模式。例如:
这将定位
childDiv
元素相对于 parentDiv 的位置向左 50 像素和向下 20 像素。To position an element “fixed” relative to the window , you want
position:fixed
, and can usetop:
,left:
,right:
, andbottom:
您认为合适的位置。例如:
这将定位
yourDiv
相对于 Web 浏览器窗口固定,距底部边缘 40 像素,距右边缘 40 像素。