Jquery 如何检测一个元素是否在另一个元素下面浮动?

Jquery 如何检测一个元素是否在另一个元素下面浮动?,jquery,css,web,Jquery,Css,Web,我有一个盒子,里面漂浮着两个盒子。如果视口很大,则框彼此相邻。如果视口很小,框会一个接一个地移动(JSFIDLE固定了宽度和高度,只是为了说明我的两个场景:) 我想使用jQuery为容器框提供一个高度(不相关,但包装器中的每个元素都需要有一个固定的高度,不能有元素自由浮动而不占用垂直空间)。我需要根据容器内的元素是否在彼此上方浮动来计算容器盒的高度 里面的小盒子有固定的高度,所以结果会是: 如果元素彼此相邻,则使容器的高度为200px 如果元素是一个在另一个之上,则使容器的高度为400px

我有一个盒子,里面漂浮着两个盒子。如果视口很大,则框彼此相邻。如果视口很小,框会一个接一个地移动(JSFIDLE固定了宽度和高度,只是为了说明我的两个场景:)

我想使用jQuery为容器框提供一个高度(不相关,但包装器中的每个元素都需要有一个固定的高度,不能有元素自由浮动而不占用垂直空间)。我需要根据容器内的元素是否在彼此上方浮动来计算容器盒的高度

里面的小盒子有固定的高度,所以结果会是:

  • 如果元素彼此相邻,则使容器的高度为200px
  • 如果元素是一个在另一个之上,则使容器的高度为400px
我能想到的唯一方法是从第二个框的顶部到容器顶部进行
offset()
position()
计算(如果大于10px,则应用更改)。但是我想知道是否有更好的方法,更直接的方法

检查
.position()
没有那么糟糕:

if($("#topElement").position().top - $("#bottomElement").position().top > 10) {
    $("#bottomElement").css("height", "400px");
}

当然,您会想更改ID,但您知道了。

我不明白,我的意思是,您不能用CSS使容器调整到其内容吗?
溢出:容器上隐藏的
应该可以做到,不需要
高度


演示:

它无法调整,因为里面的元素是浮动的,我需要所有元素使用垂直空间。我添加了高度值来显示这两个场景,比如说,容器有200px。当元素垂直浮动时,我需要将其更改为400px。也许这不是个坏主意。谢谢你的回复!