FIREFOX下背景层的自适应高度

在IE下很容易实现高度的自适应,但在FF下如果DIV层里包含的是层,而不是直接填充内容的话,是不会自动适应高度的,这在我们设置背景层时经常用到的,下面是一个例子:
[coolcode]

[/coolcode]

container作为最外层,在IE下可以自适应,但在FF下就只有main层与sidebar层可以,苦思良久,也问了许多朋友,最后还是从网上搜到答案,很简单:
只需定义#container { display:table}就可以了,原理是和以前的表格布局是一样的.

只是这个问题好像会出现float层出错…如果还有更好的解决 方法大家可以留言

11月28日今天又试出了一种解决方法。

在上面的这段代码中。我们再设定一下container的height:100% main和sidebar的height:100%.

这样可以在firfox和IE下测试通过,比起display:table;的方法好些。display:table;会导致一些布局出错。

所以还是推荐大家用这个height:100%;

大概的原理是,当子级DIV高度变大的时候,由于父级的高度没有设定所以无法变高,所以我们设定了父级的

DIV高度为100%,但如果没有设定子级DIV的高度里,也是会出错。所以我们就同时指定了父级的DIV和子级DIV 同时为100%这样就可以解决了

今天下午测试通过。

2007年3月15(打假的日子啊.)新加两种.

[coolcode]
1

2

.clear:after {
content: “.”;
display: block;
height: 0;
clear: both;
visibility: hidden;
}
[/coolcode]

据说两种的兼容性不错.适合小范围内使用.

关于after可以参考一下下面的
http://www.blueidea.com/tech/web/2005/3065.asp

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据