请参阅此页面以供参考:test page
我正在设计一个包含手风琴式垂直导航栏的侧边栏的网站。包含此手风琴的侧边栏相对于容纳它的容器绝对定位。我做到了这一点,因此侧边栏会保持顶部,底部和侧面的粘性。
当您单击产品按钮时,手风琴会很好地扩展到容器之外,溢出到页脚中。如果我将侧边栏浮动到左侧,它会增长以容纳整个侧边栏,但默认情况下它不会粘到容器的底部。
我需要一种解决方案,允许侧边栏绝对定位,并在手风琴扩展时允许增长。有任何想法吗?也许是Jquery解决方案?
答案 0 :(得分:1)
我不明白为什么你不能使用浮动。
从粘到底是什么意思?
修改
因为你使用绝对定位,现在有办法扩展容器,因为菜单不再在流程中了。 (好的,你可以使用JavaScript),但我真的没有看到问题。
答案 1 :(得分:1)
虽然问题是如何让一个绝对定位的区域增长,但答案是你不能不使用javascript。
经过一些研究后,似乎很多人都陷入了同样的立场:“你如何让正确的专栏(侧边栏)一直延伸到页面上?”
答案是使用Faux Columns!
答案 2 :(得分:0)
如果你将它漂浮在并且绝对定位它,它会自动展开。
答案 3 :(得分:0)
我发现在包含div上设置overflow: hidden;
通常会产生奇迹。由于您已将内容告知隐藏,因此浏览器会不会而不是隐藏它(除非您设置了高度或最大高度)。当容器具有浮动等时,这通常很有效。无需向clear: both;
等添加div。
试一试......
编辑:我一直在玩这个,我无法让它在您的网站上工作。您可以向左浮动菜单和主区域,然后将容器设置为overflow: hidden;
吗?这就是我过去使用过的。
答案 4 :(得分:0)
jQuery解决方案应该可以使用这样的东西挂钩到导航链接的点击监听器上:
$('#leftbar').height( $('#leftbar')[0].scrollHeight );
$('#container').height( $('#container')[0].scrollHeight );
它应该基本上调整条形和容器的大小以包含它们的内容。您可能想要调整几个像素或其他东西,但这就是想法。
编辑:由于手风琴不会立刻扩展整个子菜单,可能不得不把它放在某个地方的调整大小循环中,或者只是在动画结束时这样做,如果那个瞬间的差异,这可能会很复杂没关系。