我希望创建一个包含在<ul>
图像的幻灯片:CSS相对绝对定位导致容器没有高度
<ul>
<li><a href="images/01/large.jpg"><img src="images/01/default.jpg"></a></li>
<li><a href="images/02/large.jpg"><img src="images/02/default.jpg"></a></li>
<li><a href="images/03/large.jpg"><img src="images/03/default.jpg"></a></li>
<li><a href="images/04/large.jpg"><img src="images/04/default.jpg"></a></li>
<li><a href="images/05/large.jpg"><img src="images/05/default.jpg"></a></li>
<li><a href="images/06/large.jpg"><img src="images/06/default.jpg"></a></li>
<li><a href="images/07/large.jpg"><img src="images/07/default.jpg"></a></li>
<li><a href="images/08/large.jpg"><img src="images/08/default.jpg"></a></li>
<li><a href="images/09/large.jpg"><img src="images/09/default.jpg"></a></li>
<li><a href="images/10/large.jpg"><img src="images/10/default.jpg"></a></li>
<li><a href="images/11/large.jpg"><img src="images/11/default.jpg"></a></li>
<li><a href="images/12/large.jpg"><img src="images/12/default.jpg"></a></li>
<li><a href="images/13/large.jpg"><img src="images/13/default.jpg"></a></li>
</ul>
<style>
ul {
list-style-type: none;
margin: 0;
padding: 0;
position: relative;
}
li {
display: none;
list-style-type:none;
margin:0;
padding:0;
position: absolute;
}
</style>
你可以看到的HTML标记和CSS是相当直截了当。我遇到的问题是,尽管所有图像的大小相同,但大小并不是预先知道的。因此,我无法在<ul>
上设置固定高度,但我确实必须 - 因为相对定位元素中的绝对定位元素意味着容器的高度为零,图像开始出现在其下方的内容上。
我正在使用jQuery,所以请指导我使用基于CSS和/或jQuery的解决方案。 请注意是我以前已经尝试过:
$("ul").height(
$("ul li:eq(0)").outerheight()
)
但是,在文件准备好,图像不加载,因此高度未知。我也尝试添加延迟/等待$("ul li:eq(0)").outerheight() > 0
,但这给IE中的问题。 IE在部分下载图像时通常会返回大于零的值,但如果该值通常低于实际图像高度,则会返回该值。让我知道你是否需要任何澄清。
使用image.onload记录图像的高度 – pharalia 2010-10-22 14:48:06
使用jQuery?你能否给我一个例子或者指点我的文档? – 2010-10-22 14:51:10