新疆网站建设 乌鲁木齐网页设计
 
欢迎您!
 您现在位置:华维时代科技技术中心网页设计- 浏览正文 网站快速导航: 
CSS布局自适应高度解决方法

这是一个比较典型的三行二列布局,每列高度(事先并不能确定哪列的高度)的相同,是每个设计师追求的目标,按一般的做法,大多采用背景图填充、加JS脚本的方法使列的高度相同,本文要介绍的是采用容器溢出部分隐藏和列的负底边界和正的内补丁相结合的方法来解决列高度相同的问题。

先看代码:

#wrap{

overflow: hidden;

}

#sideleft, #sideright{

padding-bottom: 32767px;

margin-bottom: -32767px;

}

实现原理:

块元素必须包含在一个容器里。

应用overflow: hidden 到容器里的元素。

应用 padding-bottom(足够大的值)到列的块元素 。

应用margin-bottom(足够大的值)到列的块元素。

padding-bottom将列拉长变的一样高,而负的margin-bottom又使其回到底部开始的位置,同时,溢出部分隐藏掉了。

兼容各浏览器

IE Mac 5

得到高度正确,所以要过滤掉上面的代码。

/**/

#sideleft, #sideright{

padding-bottom: 32767px;

margin-bottom: -32767px;

}

/**/

Opera

1. Opera7.0-7.2不能正确清除溢出部分,所以要加:

/* easy clearing */

#wrap:after

{

content: ''[DO NOT LEAVE IT IS NOT REAL]'';

display: block;

height: 0;

clear: both;

visibility: hidden;

}

#wrap

{

display: inline-block;

}

/**/

#wrap

{

display: block;

}

/* end easy clearing */

/**/



2. Opera8处理overflow: hidden有个BUG,还得加上以下代码:

/**/

#sideleft, #sideright

{

padding-bottom: 32767px !important;

margin-bottom: -32767px !important;

}

@media all and (min-width: 0px) {

#sideleft, #sideright

{

padding-bottom: 0 !important;

margin-bottom: 0 !important;

}

#sideleft:before, #sideright:before

{

content: ''[DO NOT LEAVE IT IS NOT REAL]'';

display: block;

background: inherit;

padding-top: 32767px !important;

margin-bottom: -32767px !important;

height: 0;

}

}

/**/

3.Opera9的B2在修正8的bug.

关于我们 | 人才招聘 | 常见问题 | 在线留言 | 技术中心 | 网站案例 | 联系方式
 
版权所有 ©2005-2010乌鲁木齐华维时代科技信息有限公司,严禁抄袭复制
公司地址:新疆乌鲁木齐市北园春克拉玛依西路汇嘉园 新ICP备05004410号
咨询电话:0991-8787177 8787997 E-mail:info@xjhuawei.com
本站关键字:新疆网站建设 新疆网页设计 新疆网络公司 乌鲁木齐建网站 乌鲁木齐网站建设
公司营业执照验证