Jquery 让绝对定位的区域增长

Jquery 让绝对定位的区域增长,jquery,css,positioning,css-position,Jquery,Css,Positioning,Css Position,请参阅本页以供参考: 我正在设计一个网站,有一个侧栏,其中包含一个手风琴风格的垂直导航栏。包含此手风琴的侧边栏相对于容纳它的容器绝对定位。我这样做是为了让边栏保持顶部、底部和侧面的粘性 单击“产品”按钮时,手风琴会展开,远远超过容器,溢出到页脚中。如果我将侧边栏向左浮动,它将增长以容纳整个侧边栏,但默认情况下它不会粘到容器底部 我需要一个解决方案,使边栏绝对定位,并允许增长,如果手风琴扩大。有什么想法吗?也许是Jquery解决方案?如果将其向左浮动并绝对定位,它应该会自动展开。我发现设置溢出:隐

请参阅本页以供参考:

我正在设计一个网站,有一个侧栏,其中包含一个手风琴风格的垂直导航栏。包含此手风琴的侧边栏相对于容纳它的容器绝对定位。我这样做是为了让边栏保持顶部、底部和侧面的粘性

单击“产品”按钮时,手风琴会展开,远远超过容器,溢出到页脚中。如果我将侧边栏向左浮动,它将增长以容纳整个侧边栏,但默认情况下它不会粘到容器底部


我需要一个解决方案,使边栏绝对定位,并允许增长,如果手风琴扩大。有什么想法吗?也许是Jquery解决方案?

如果将其向左浮动并绝对定位,它应该会自动展开。

我发现设置
溢出:隐藏通常非常有效。因为您告诉内容要隐藏,所以浏览器会特意不隐藏它(除非您设置了高度或最大高度)。通常,当容器有浮点数等时,这种方法效果很好。无需向
clear:both添加div,等等

试试这个


编辑:我一直在玩这个,无法在您的网站上使用。你可以只在菜单和主区域左浮动,然后将容器设置为
overflow:hidden?这就是我过去使用过的方法。

一个jQuery解决方案应该是可行的,它将类似的东西连接到导航链接的单击侦听器上:

$('#leftbar').height( $('#leftbar')[0].scrollHeight );
$('#container').height( $('#container')[0].scrollHeight );
它应该基本上调整酒吧和容器的大小,以容纳其内容。你可能想调整几个像素或者别的什么,但这就是你的想法


编辑:这可能会因为手风琴不能一次展开整个子菜单而变得复杂,可能必须将其放在某个调整大小的循环中,或者只要在动画结束时这样做,如果暂时的差异可以的话。

我不明白为什么不能使用float

“粘到底”是什么意思

编辑


因为您使用绝对定位,现在有了扩展容器的方法,因为菜单不再在流程中。(好的,你可以使用JavaScript),但我真的看不出有什么问题。

虽然问题是如何让绝对定位的区域增长,但答案是如果不使用JavaScript,你就无法实现

经过一些研究,似乎许多人都陷入了同样的境地:“如何让正确的栏(侧边栏)一直延伸到页面下方?”

答案是使用人造柱


事实并非如此。我想,它相对于容器的位置覆盖了浮动。看起来你是对的。看着页面,我不确定容器底部粘了什么;你能解释得更详细一点吗?整个div,“leftbar”是绝对定位在div上的,containerI的意思是,是什么阻止了你仅仅浮动它?对不起,我仍然很难理解。什么东西不会粘到底部?在我看来,菜单好像在每一页的顶部。你把它算出来了吗?链接死了…这不起作用,因为如果我将其浮动,它将不会粘到容器底部!在某些页面上,手风琴没有对齐,这对我来说不起作用,尽管我确实需要一个jquery解决方案。