电脑技术学习

推荐:网页中三列自适应高度布局的实现

dn001

Step 5:最后的完善

至此,布局已基本完成,但如果浏览器的最小尺寸比中心宽度小,那么左列将变的很小,所以要设定个最小宽度,可惜IE现在还不支持。800x600没问题

body{

min-width:550px;/*2xLCwidth+RCwidth*/

}

第四步完成的代码在IE里左栏会消失,现在要做的是把左栏定到它正确的位置上去。

*html#left{

left:150px;/*RCwidth*/

}

内容的边距

我们需要给内容一个内补丁(10PX),否则的话,文本都顶着边。

列的总宽度等于(padding+width)。

#left{

width:180px;/*LCfullwidth-padding*/

padding:010px;

right:200px;/*LCfullwidth*/

margin-left:-100%;

}

对IE5.x,应该用个hacks

body{

min-width:630px;/*2x(LCfullwidth+

CCpadding)+RCfullwidth*/

}

#container{

padding-left:200px;/*LCfullwidth*/

padding-right:190px;/*RCfullwidth+CCpadding*/

}

#container.column{

position:relative;

float:left;

}

#center{

padding:10px20px;/*CCpadding*/

width:100%;

}

#left{

width:180px;/*LCwidth*/

padding:010px;/*LCpadding*/

right:240px;/*LCfullwidth+CCpadding*/

margin-left:-100%;

}

#right{

width:130px;/*RCwidth*/

padding:010px;/*RCpadding*/

margin-right:-190px;/*RCfullwidth+CCpadding*/

}

#footer{

clear:both;

}

/***IEFix***/

*html#left{

left:150px;/*RCfullwidth*/

}

高度自适应

#container{

overflow:hidden;

}

#container.column{

padding-bottom:20010px;/*X+padding-bottom*/

margin-bottom:-20000px;/*X*/

}

#footer{

position:relative;

}

这个代码起源于adapted wholesale。

遗憾的是现在Opera还不支持#container的overflow,期待版本9。

现在IE还不能真正的自适应高度,还要加下面的代码,如果你需要#footer,可再加个DIV(#footer外面)。

<divid="footer-wrapper">

<divid="footer"></div>

</div>

*htmlbody{

overflow:hidden;

}

*html#footer-wrapper{

float:left;

position:relative;

width:100%;

padding-bottom:10010px;

margin-bottom:-10000px;

background:#fff;/*Sameasbody

background*/

}

陈刚