2012-03-08 29 views
1

我试图做到的是以下内容:包含图像集格的高度:绝对

<div> 
    <div class="img"><img src=""></div> 
    <div class="img"><img src=""></div> 
    <div class="img"><img src=""></div> 
</div>  

的div将在幻灯片中使用,以便他们需要被定位在一个顶部另一个,第一个显示,其他隐藏。

当我设置位置:绝对的div虽然,外部div的高度收缩并破坏整个布局。有关如何解决这个问题的任何提示?

编辑:HTML结构不可协商。

+0

明确定义'div'的尺寸。 – alex 2012-03-08 10:59:46

+0

不能,因为图像大小可能会有所不同。 – magtak 2012-03-08 11:00:47

+0

为什么不使用单个div和单个图像标签。您可以在任何时候通过javascript函数点击或经过特定时间后更改图像的src属性。 – 2012-03-08 11:07:18

回答

2

根据其内容结束使用JQuery设置di​​v的高度。只需要在循环中添加一行代码即可。案件结案。

0

我认为你的做法是错误的,做到这一点的方式不是让div以绝对定位堆叠在一起。将最后两个div上的css设置为显示:无。当你想移动到下一个图像时,将图像设置为显示:块。 (如图示用了jQuery)

$("div#image2").show(); 

,然后隐藏其他两个

$("div#image2").siblings().hide(); 

你需要添加一个id属性,所以你可以选择唯一您的图像。

+0

他们*隐藏,我知道如何使用显示和隐藏。事情是,如果我不把他们放在另一个上面,他们会垂直堆放。因为我没有使用.show和.hide,但是fadeIn和fadeOut,图像必须事先被绝对定位 – magtak 2012-03-08 11:17:44

+0

您的方法适用于粗略的显示/隐藏幻灯片,但是如果您想使用淡入淡出,div必须是另一个。 – magtak 2012-03-08 11:18:53