2012-01-21 44 views
2

我有一个div高度为400px,它的内容滚动到里面。我有另一个div里面的图像,这个div位于这个父div的底部,使用position:absolute;底部:0;但当我滚动它向上移动与内容的父div。如何让一个div停留在另一个div的底部滚动

每次用户滚动父div时,我都使用jQuery将div的位置更改为底部,但这种方式有效,但每次div滚动时都会跳转。

有没有办法用平滑滚动来做到这一点?我希望它只是坐在父div的底部,而不是移动。

谢谢

回答

6

您可以将div的内容放入另一个div内,并将图像相对于父级放置。如果有的话,你将不得不考虑滚动条的高度,但除此之外它应该工作。我会尽力为你提供一个jsfiddle。

http://jsfiddle.net/AwH9S/

你可能想实现一些JavaScript来确定滚动条的大小,以及是否是存在。

+0

完美的工作。我用if(elem [0] .scrollHeight - elem.scrollTop()== elem.outerHeight()){//隐藏图像函数}来隐藏图像,当滚动击中底部时。谢谢 –

0

可以分享一些HTML/CSS吗?

在你的CSS

#theDiv { 
    position: absolute; 
    bottom: 0; 
} 

,并在它的父给它

position: relative; 
0

你不能做你正在尝试以这种方式做。以前的位置相对和绝对的建议将帮助你“初始化”它的父div底部的img,但如果“scrollHeight”(纠正我,如果我错了某人,不知道我在这里使用正确的词汇)更改,也就是说,用户向下滚动div,然后绝对定位的div将保持这种绝对位置,从而滚动显示内容。 您不能使用固定位置,因为它会固定在屏幕上,而不是最近的父亲。无论你是否愿意,事实是,最简单的方法是设置一个包含2个div的parernt,一个用于可滚动内容,另一个用于图像,并定位2,以便第二个“出现”附在第一个底部。

相关问题