您的位置:首页 > 其它

脚本控制三行三列自适应高度DIV布局

2007-01-29 00:00 756 查看
这个例子是用JS脚本控制并列DIV的高度,通常在DIV布局中,自适应高度一直是比较头疼的问题,一般大都采用背景图、外套DIV、右栏覆盖左栏......来解决。现在加了脚本后,简单多了,假如有三个水平并列的DIV,fbox、mbox、 sbox,只要在<body>标签中写入:onload="P7_equalCols('fbox','mbox','sbox')",测试条件:ie5.x、ie6.0、FF1.03、NS7.2、opera8.01。最终效果

JS代码:版权归原作者 ,仅供学习研究.
/*  
------------------------------------------------  
PVII Equal CSS Columns scripts  
Copyright (c) 2005 Project Seven Development  
www.projectseven.com  
Version: 1.5.0  
------------------------------------------------  
*/  
function P7_colH(){ //v1.5 by PVII-www.projectseven.com  
var i,oh,hh,h=0,dA=document.p7eqc,an=document.p7eqa;if(dA&&dA.length){  
for(i=0;i<dA.length;i++){dA[i].style.height='auto';}for(i=0;i<dA.length;i++){  
oh=dA[i].offsetHeight;h=(oh>h)?oh:h;}for(i=0;i<dA.length;i++){if(an){  
dA[i].style.height=h+'px';}else{P7_eqA(dA[i].id,dA[i].offsetHeight,h);}}if(an){  
for(i=0;i<dA.length;i++){hh=dA[i].offsetHeight;if(hh>h){  
dA[i].style.height=(h-(hh-h))+'px';}}}else{document.p7eqa=1;}  
document.p7eqth=document.body.offsetHeight;  
document.p7eqtw=document.body.offsetWidth;}  
}  
function P7_eqT(){ //v1.5 by PVII-www.projectseven.com  
if(document.p7eqth!=document.body.offsetHeight||document.p7eqtw! =document.body.offsetWidth){  
P7_colH();}  
}  
function P7_equalCols(){ //v1.5 by PVII-www.projectseven.com  
if(document.getElementById){document.p7eqc=new Array;for(i=0;i<arguments.length;i++){  
document.p7eqc[i]=document.getElementById(arguments[i]);} setInterval("P7_eqT()",10);}  
}  
function P7_eqA(el,h,ht){ //v1.5 by PVII-www.projectseven.com  
var sp=10,inc=10,nh=h,g=document.getElementById(el),oh=g.offsetHeight,ch=parseInt(g.style.height) ;  
ch=(ch)?ch:h;var ad=oh-ch,adT=ht-ad;nh+=inc;nh=(nh>adT)?adT:nh;g.style.height=nh+'px';  
oh=g.offsetHeight;if(oh>ht){nh=(ht-(oh-ht));g.style.height=nh+'px';}  
if(nh<adT){setTimeout("P7_eqA('"+el+"',"+nh+","+ht+") ",sp);}  
}






脚本控制三行三列自适应高度DIV布局







脚本控制三行三列自适应高度DIV布局




亲和力指的并不只是关于盲人和屏幕阅读器。还有许多人虽然不是盲人,但是有视力障碍 - 你我变老时就会成为他们的一员。
使网站变得更具亲和力的一个最简单的方法就是允许用户改变文字大小;拒绝提供这样的选择就剥夺了用户的主导权,很可能使用户无法舒适地阅读。

亲和力指的并不只是关于盲人和屏幕阅读器。还有许多人虽然不是盲人,但是有视力障碍 - 你我变老时就会成为他们的一员。
使网站变得更具亲和力的一个最简单的方法就是允许用户改变文字大小;拒绝提供这样的选择就剥夺了用户的主导权,很可能使用户无法舒适地阅读。


亲和力指的并不只是关于盲人和屏幕阅读器。还有许多人虽然不是盲人,但是有视力障碍 - 你我变老时就会成为他们的一员。
使网站变得更具亲和力的一个最简单的方法就是允许用户改变文字大小;拒绝提供这样的选择就剥夺了用户的主导权,很可能使用户无法舒适地阅读。


如果设计者使用像素为单位指定文字大小,大多数的用户将无法缩放文字,因为 Internet Explorer 改变文字大小的方式与别的浏览器不同。Mozilla 和 Opera 可以缩放已经设定像素大小的文字,而Windows 下的IE却不能。


亲和力指的并不只是关于盲人和屏幕阅读器。还有许多人虽然不是盲人,但是有视力障碍 - 你我变老时就会成为他们的一员。
使网站变得更具亲和力的一个最简单的方法就是允许用户改变文字大小;拒绝提供这样的选择就剥夺了用户的主导权,很可能使用户无法舒适地阅读。


如果设计者使用像素为单位指定文字大小,大多数的用户将无法缩放文字,因为 Internet Explorer 改变文字大小的方式与别的浏览器不同。Mozilla 和 Opera 可以缩放已经设定像素大小的文字,而Windows 下的IE却不能。



亲和力指的并不只是关于盲人和屏幕阅读器。还有许多人虽然不是盲人,但是有视力障碍 - 你我变老时就会成为他们的一员。
使网站变得更具亲和力的一个最简单的方法就是允许用户改变文字大小;拒绝提供这样的选择就剥夺了用户的主导权,很可能使用户无法舒适地阅读。


仅供演示 Back




[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: