CSS中布局div高度自适应的方法
2007-04-25 13:14
288 查看
目前收集了一种方法,在实际应用中证实有效果,使用时注意理解下面的分析.
html,body{...}{
margin:0px;
height:100%;
}
#left {...}{
background-color:#CCC;
width:300px;
height:100%;
float:left;
}
代码已经到了不能再简单的地步,对#left对象设置了height:100%;,然而也能够看见,同时设置了HTML与body的height:100%;,而这个就是高度自适应问题的关键所在。
分析:
一个对象高度是否可以使用百分比显示,取决于对象的父级对象,#left在页面中直接旋转在body之中,因此它的父级是body,而浏览器默认状态下,是没有给body一个高度属性的,因此当我们直接设置#left为height:100%;时,不会产生任何效果,而当我们给body设置了100%之后,它的子级对象#left的height:100%;便发生作用了,这便是浏览器解析规则引发的高度自适应问题。而代码中除了给body应用之外,还给HTML对象也应用相同的样式设计,这样做的好处是使IE与firefox浏览器都能够实现高度自适应,而body却不是。另外,Firefox中的HTML标签不是100%高度,因此给两个标签都定义为height:100%;以保证两个浏览器下均能够正常显示。
转载自:http://www.84design.com/article.asp?id=179
html,body{...}{
margin:0px;
height:100%;
}
#left {...}{
background-color:#CCC;
width:300px;
height:100%;
float:left;
}
代码已经到了不能再简单的地步,对#left对象设置了height:100%;,然而也能够看见,同时设置了HTML与body的height:100%;,而这个就是高度自适应问题的关键所在。
分析:
一个对象高度是否可以使用百分比显示,取决于对象的父级对象,#left在页面中直接旋转在body之中,因此它的父级是body,而浏览器默认状态下,是没有给body一个高度属性的,因此当我们直接设置#left为height:100%;时,不会产生任何效果,而当我们给body设置了100%之后,它的子级对象#left的height:100%;便发生作用了,这便是浏览器解析规则引发的高度自适应问题。而代码中除了给body应用之外,还给HTML对象也应用相同的样式设计,这样做的好处是使IE与firefox浏览器都能够实现高度自适应,而body却不是。另外,Firefox中的HTML标签不是100%高度,因此给两个标签都定义为height:100%;以保证两个浏览器下均能够正常显示。
转载自:http://www.84design.com/article.asp?id=179
相关文章推荐
- css中div高度自适应的方法(兼容FF IE)
- DIV+CSS布局中自适应高度的解决方法
- Equal Height Columns --DIV+CSS布局中自适应高度的解决方法
- HTML/CSS中,DIV高度自适应的解决方法
- css中div高度自适应的方法
- div+css布局中父层div高度不随子div高度变化的解决方法(clear属性使用方法)
- DIV+CSS布局中自适应高度的解决方法
- WEB标准布局Div + CSS 高度自适应方法
- 两侧高度相互适应的CSS+div布局
- DIV+CSS布局:多浏览器兼容 指定CSS的最小高度
- 如何防止css高度塌陷最推荐的方法:使用伪元素(这样不会对文档布局造成影响)
- ie和firefox中通用的设置div最小高度和达到这一最小高度后自适应的css代码
- DIV+CSS高度自适应方法网页代码实例
- 分享用纯CSS实现三列DIV等高布局的方法
- CSS实现中间自适应的三栏布局,共4种方法
- CSS网页布局DIV垂直居中的各种方法
- 典型的三行两列居中高度自适应div+css布局
- Div+css+js实现高度适应浏览器,做出的效果像winform
- 关于Asp.net2.0下Div+Css布局页面样式实效的解决方法
- 三行二列居中高度自适应布局DIV+CSS