Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/cmake/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Css 如何将侧边栏列中的div固定到底部?_Css_Layout - Fatal编程技术网

Css 如何将侧边栏列中的div固定到底部?

Css 如何将侧边栏列中的div固定到底部?,css,layout,Css,Layout,我有一个简单的两列布局,底部有一个页脚。当侧边栏中的内容高于主栏中的内容时,一切看起来都很棒。但是当主栏的高度大于侧栏时,我需要侧栏增长到与主栏相同的高度,并且侧栏中的最后一个固定到最底部 以下是我的示例代码: 侧边栏的高度仅与其内容相同。修复规避的一种方法是将两个列包装到另一个div中。因为您浮动了列,所以以具有clear:all(我在底部添加了内联)的元素结束。这样包装器将与最高的div一样高(在本例中为左列)。然后可以将pin me to bottom div定位在包装器的底部,而不是右侧

我有一个简单的两列布局,底部有一个页脚。当侧边栏中的内容高于主栏中的内容时,一切看起来都很棒。但是当主栏的高度大于侧栏时,我需要侧栏增长到与主栏相同的高度,并且侧栏中的最后一个
固定到最底部

以下是我的示例代码:


侧边栏的高度仅与其内容相同。修复规避的一种方法是将两个列包装到另一个div中。因为您浮动了列,所以以具有
clear:all
(我在底部添加了内联)的元素结束。这样包装器将与最高的div一样高(在本例中为左列)。然后可以将pin me to bottom div定位在包装器的底部,而不是右侧列中。添加
位置:相对到包装器,因此您可以
位置:绝对将我固定到底部div


结果:

谢谢。唯一的问题是,当主列不是很高时,pin me to bottom div会覆盖上面的边栏元素(因为它是绝对定位的)。有什么办法可以防止吗?好的,我想我可以做一件事——我可以在
wrap_columns
div上设置
min height
,以确保其他侧栏元素可见……但这假设侧栏的大小变化不大。您还可以在侧栏中添加
padding bottom
,并使用固定的div的高度,使固定的div覆盖空白空间。但是你是对的,如果固定div的高度是可变的,这就很棘手了。在这种情况下,你需要在左边有一列,在右边有两列。但我不认为你可以把一个div钉在钮扣上,然后强迫它把前一个div往上推。至少没有一些JavaScript读取固定div的高度,以计算右上div所需的底部填充/边距。