Javascript 相对和绝对定位如何与嵌入式div一起工作?

Javascript 相对和绝对定位如何与嵌入式div一起工作?,javascript,css,html,css-position,Javascript,Css,Html,Css Position,我需要在divs中定位divs,我快疯了。我在网上读了很多文档,但是我仍然不清楚relative和absolute在嵌入divs时的定位行为 具有以下特征的人: 我发现理解绝对定位的最好方法是 位置:相对于子元素的“下游”和 位置:绝对看起来是父元素的“上游”。就是什么时候, 告诉HTML元素绝对定位,它将 查找其父元素,直到找到一个设置为 位置:相对的,并且将基于此来定位自身。如果是 如果找不到,它将根据 默认情况下 这是否适用于所有浏览器?这是一个完整的解释吗 我的问题是我在几个divs中嵌

我需要在
div
s中定位
div
s,我快疯了。我在网上读了很多文档,但是我仍然不清楚
relative
absolute
在嵌入
div
s时的定位行为

具有以下特征的人:

我发现理解绝对定位的最好方法是 位置:相对于子元素的“下游”和 位置:绝对看起来是父元素的“上游”。就是什么时候, 告诉HTML元素绝对定位,它将 查找其父元素,直到找到一个设置为 位置:相对的,并且将基于此来定位自身。如果是 如果找不到,它将根据 默认情况下

这是否适用于所有浏览器?这是一个完整的解释吗

我的问题是我在几个
div
s中嵌入了几个
div
s。我需要在父级
div
中定位一些子级
div
,精度很高(例如前33,左9)。父级
div
可以嵌入到父级
div
中,精度也很高,等等

如何解决所有浏览器的这个问题?我是否应该创建一个超级
relative
parent
div
,从中可以将
div
的整个层次结构定位为
absolute

编辑

从目前的回答中,我有一个额外的问题:是否必须在每个
div
中明确声明一个
相对
绝对
位置才能进行定位?换句话说,如果div没有
相对
绝对
位置,则在计算位置时不考虑它

用于记录

以上问题的答案是肯定的

我是否应该创建一个超级相对父div,从中可以将div的整个层次结构定位为绝对的

对。每个绝对定位的元素将定位在其最近的祖先中,该祖先本身是绝对或相对定位的

我是否应该创建一个超级相对父div,从中可以将div的整个层次结构定位为绝对的


对。每个绝对定位的元素将被定位在其最近的祖先中,该祖先本身是绝对定位的或相对定位的。

我将再次重复下面的块

我发现理解绝对定位的最好方法是 位置:相对于子元素的“下游”和 位置:绝对看起来是父元素的“上游”。就是什么时候, 告诉HTML元素绝对定位,它将 查找其父元素,直到找到一个设置为 位置:相对的,并且将基于此来定位自身。如果是 如果找不到,它将根据by定位自身 默认

是的,您需要有一个相对于绝对父对象的位置,比如body,稍后在代码中,您可以让元素相对于父对象进行绝对定位

总的来说,当涉及到不同的屏幕分辨率时,绝对位置是一种痛苦


但方法是先确定父对象的相对位置,然后确定子对象的绝对位置。

我将再次重复下面的步骤

我发现理解绝对定位的最好方法是 位置:相对于子元素的“下游”和 位置:绝对看起来是父元素的“上游”。就是什么时候, 告诉HTML元素绝对定位,它将 查找其父元素,直到找到一个设置为 位置:相对的,并且将基于此来定位自身。如果是 如果找不到,它将根据by定位自身 默认

是的,您需要有一个相对于绝对父对象的位置,比如body,稍后在代码中,您可以让元素相对于父对象进行绝对定位

总的来说,当涉及到不同的屏幕分辨率时,绝对位置是一种痛苦


但方法是先确定父对象的相对位置,然后确定子对象的绝对位置。

我发现用这种方法更容易理解:

如果项目是
位置:相对的
,则顶部、底部、左侧和右侧位置的任何样式设置都是相对于项目在正常布局流中的位置。因此:

position: relative;
top: 10px;
将项目向下推10px,使其低于正常HTML布局中的项目

如果项目是
position:absolute
,则它将相对于最接近的父项进行定位,该父项是
position:relative
position:absolute
,如果没有父项满足该标准,则它将相对于主体元素进行定位。例如,如果直接父项为“位置:相对”,子项为:

position: absolute;
top: 10px;
left: 10px;
然后,对象将从父对象的左上角向下和向右放置10px。当对象为
位置:绝对时,它将从页面布局中删除,并且不会影响任何其他对象的布局(它自己的子对象除外)

例如,如果您希望在容器对象中将三个图像放置在彼此的顶部(也许这样您可以在幻灯片中循环浏览它们,您可以使用以下CSS:

.container {position: relative; height: 100px; width: 133px;}
.container img {position: absolute; top: 0; left: 0;}

我发现用这种方式更容易理解:

如果项目是
位置:相对的
,则顶部、底部、左侧和右侧位置的任何样式设置都与项目在正常布局流程中的位置相对。因此:

position: relative;
top: 10px;
将项目向下推10px,使其低于正常HTML布局中的项目

如果项目是
position:absolute
,则它相对于最接近的父项
position:relat进行定位