【发布时间】:2014-09-06 03:26:57
【问题描述】:
我正在尝试了解定位的基础知识,我在互联网上看到了这个显示特定属性的示例。本质上,他们用 CSS 创建了两个盒子:
#box_1 {
width: 200px;
height: 200px;
background: #ee3e64;
}
#box_2 {
position: absolute;
left: 100px;
width: 200px;
height: 200px;
background: #44accf;
}
因为绝对定位将容器相对于它的第一个父元素放置,所以第二个框不应该放在浏览器的顶部,然后离开 100 像素吗?有了这个绝对定位的定义,两个框不应该重叠吗?相反,第二个框最终位于第一个框下方。我认为绝对定位会从页面的正常流程中删除一个对象?谁能给我解释一下?
这就是我所说的:http://jsfiddle.net/WScGM/
【问题讨论】:
-
SVSchmidt 的回答是一个很好的总结。不过,我想从您的问题中澄清一件事。绝对定位的元素不是根据它们的第一个父元素定位的。它们根据最近的祖先
position:relative或position:absolute定位。如果您没有指定任何其他相对或绝对项目,那么这最终是body,而不是项目的父项。 -
@AndyM 没错,见stackoverflow.com/questions/13867717/…
标签: css positioning absolute