Chinaz.com - 中国站长站

匿名投稿 投稿指南 RSS订阅 站长资讯通告:
搜索: 您的位置主页>设计在线>WEB标准>阅读资讯:解决列高度自适应(列高度相同)的五种方法

解决列高度自适应(列高度相同)的五种方法

2008-04-23 11:40:18 来源:天极网 作者:龙犊 【 评论:0

2.采用脚本控制列的高度(一)
需要事先知道哪列的高度,以此为基准用脚本控制。

document.getElementById("sideleft").style.height=document.getElementById("sideright").scrollHeight+"px"
上面的代码是以sideright的基准高度来控制sideleft的高度。

代码简单,但比较被动:

以下为引用的内容:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Equal height(使用JS实现列高度相同的方法)</title>
<style type="text/css">
body{
 padding: 0;
 margin: 0;
 font-size: 12px;
 font-family: Arial, Helvetica, sans-serif;
 line-height: 140%;
 text-align: center;
 background:#E7DFD3;
}
#wrap{
 width: 750px;
 margin: 0 auto;
 /*overflow: hidden;*/
}
#header{
 background: #E8E8E8;
}
#sideleft{
 width: 580px;
 float: left;
 background: #FFF;
 text-align: left;
}
#sideright{
 width: 170px;
 float: left;
 background: #F0F0F0;
 text-align: left;
}

#footer{
 background: #E8E8E8;
 width: 100%;
 float: left;
}
h1,h2,address,p{
 margin: 0;
 padding: .8em;
}
h1,h2{font-size: 20px;}
</style>
</head>
<body>
<div id="wrap">
  <div id="header">
    <h1>Head</h1>
  </div>
  <div id="sideleft">
    <h2>sideleft</h2>
    <p> 要从固定的、基于像素的设计方法转到弹性的、相对的设计方法并不容易。但是如果恰当利用,就可以成为增强亲和力和易用性的一个自然选择,同时又无须做出设计上的牺牲。 </p>
    <p> 像素是计算机屏幕上的不可缩放的点,而一个
      h3 就是一个字大小的方块。由于字体大小的变化, h3
      代表用户喜欢的文字大小的相对单位。 </p>
    <p> 采用印刷式的固定设计方案或许要容易些,因为如果尺寸不变,则考虑的东西就相对较少。可是如果采用弹性的设计方法,就可以充分利用电脑的显示器和浏览器。 </p>
    <p> 也许你想你的网站以某种特定的方式显示,但是你的用户想看到的可能不一样。任何强加于用户的东西都不利于易用性,从而对网站的成功造成损害。 </p>
    <p> 要从固定的、基于像素的设计方法转到弹性的、相对的设计方法并不容易。但是如果恰当利用,就可以成为增强亲和力和易用性的一个自然选择,同时又无须做出设计上的牺牲。 </p>
    <p> 像素是计算机屏幕上的不可缩放的点,而一个
      h3 就是一个字大小的方块。由于字体大小的变化, h3
      代表用户喜欢的文字大小的相对单位。 </p>
    <p> 采用印刷式的固定设计方案或许要容易些,因为如果尺寸不变,则考虑的东西就相对较少。可是如果采用弹性的设计方法,就可以充分利用电脑的显示器和浏览器。 </p>
    <p> 也许你想你的网站以某种特定的方式显示,但是你的用户想看到的可能不一样。任何强加于用户的东西都不利于易用性,从而对网站的成功造成损害。 </p>
  </div>
  <div id="sideright">
    <h2>sideright</h2>
    <p> 要从固定的、基于像素的设计方法转到弹性的、相对的设计方法并不容易。但是如果恰当利用,就可以成为增强亲和力和易用性的一个自然选择,同时又无须做出设计上的牺牲。 </p>
    <p> 像素是计算机屏幕上的不可缩放的点,而一个
      h3 就是一个字大小的方块。由于字体大小的变化, h3
      代表用户喜欢的文字大小的相对单位。 </p>
    <p> 采用印刷式的固定设计方案或许要容易些,因为如果尺寸不变,则考虑的东西就相对较少。可是如果采用弹性的设计方法,就可以充分利用电脑的显示器和浏览器。 </p>
    <p> 也许你想你的网站以某种特定的方式显示,但是你的用户想看到的可能不一样。任何强加于用户的东西都不利于易用性,从而对网站的成功造成损害。 </p>
  </div>
  <script type="text/javascript">
document.getElementById("sideleft").style.height=document.getElementById("sideright").scrollHeight+"px"
</script>
  <div id="footer">
    <address>
      Footer
    </address>
    <p>制作:<a href="http://homepage.yesky.com">网页陶吧</a></p>
  </div>
</div>
</body>
</html><script language="Javascript">
var now = new Date();
document.write("<img src='http://counter.yesky.com/counter.shtml?CID=54197&AID=-1&refer="+escape(document.referrer)+"&rand="+ now.getTime()  + "&cur="+escape(document.URL)+"' border='0' alt='' width='0' height='0'>");
</script>
<noscript>
<img src="http://counter.yesky.com/counter.shtml?CID=54197&AID=-1&refer=noscriptcounter&cur=noscriptcounter" border='0' width='0' height='0'/>
</noscript>

3.采用脚本控制列的高度(二)
不需要事先知道哪列的高度,脚本自动判断。

代码较复杂,有点延时:

以下为引用的内容:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
 <title>脚本控制三行三列自适应高度DIV布局</title>
<script src="../js/eqCols.js" type="text/javascript"></script>
 <style type="text/css">
 <!--
 body{
  font-size: 75%;
  font-family: Verdana, Geneva, Arial, Helvetica, sans-serif;
  line-height: 100%;
  margin: 5px;
  padding: 0px;
 }
 
 #header,#mid,#footer{
  width: 760px;
  margin: 0px auto;
  padding: 0px;
 }
 
 #header{
  background: #F4F4F4;
  height: 60px;
  margin-bottom: 5px;
 }
 
 h3,h5{
  padding-top: 25px;
  color: #708090;
  text-align: center;
  margin: 0; 
 }
 
 #fbox{
  background: #F1F1F1;
  width: 195px;
  float: left;
 }
 
 #mbox{
  background: #DFF7FF;
  margin: 0px 5px 0px;
  padding: 0px;
  float: left;
  width: 360px;
 }
 
 #sbox{
  background: #FFEBCC;
  width: 195px;
  float: right;
 }
 
 p{
  margin: 0px;
  padding: 10px;
  text-indent: 2em;
  line-height: 130%;
 }
 
 #footer{
  background: #CDDBED;
  border-top: solid 5px #FFFFFF;
  text-align: center;
  height: 60px;
  clear: both;
 }
 -->
 </style>
</head>

<body onload="P7_equalCols('fbox','mbox','sbox')">
<div id="header"><h3>脚本控制三行三列自适应高度DIV布局</h3></div>
<div id="mid">
<div id="fbox"><p>
亲和力指的并不只是关于盲人和屏幕阅读器。还有许多人虽然不是盲人,但是有视力障碍 - 你我变老时就会成为他们的一员。
使网站变得更具亲和力的一个最简单的方法就是允许用户改变文字大小;拒绝提供这样的选择就剥夺了用户的主导权,很可能使用户无法舒适地阅读。
</p><p>
亲和力指的并不只是关于盲人和屏幕阅读器。还有许多人虽然不是盲人,但是有视力障碍 - 你我变老时就会成为他们的一员。
使网站变得更具亲和力的一个最简单的方法就是允许用户改变文字大小;拒绝提供这样的选择就剥夺了用户的主导权,很可能使用户无法舒适地阅读。
</p></div>
<div id="mbox"><p>
亲和力指的并不只是关于盲人和屏幕阅读器。还有许多人虽然不是盲人,但是有视力障碍 - 你我变老时就会成为他们的一员。
使网站变得更具亲和力的一个最简单的方法就是允许用户改变文字大小;拒绝提供这样的选择就剥夺了用户的主导权,很可能使用户无法舒适地阅读。
</p>
<p>
如果设计者使用像素为单位指定文字大小,大多数的用户将无法缩放文字,因为 Internet Explorer 改变文字大小的方式与别的浏览器不同。Mozilla 和 Opera 可以缩放已经设定像素大小的文字,而Windows 下的IE却不能。
</p>
<p>
亲和力指的并不只是关于盲人和屏幕阅读器。还有许多人虽然不是盲人,但是有视力障碍 - 你我变老时就会成为他们的一员。
使网站变得更具亲和力的一个最简单的方法就是允许用户改变文字大小;拒绝提供这样的选择就剥夺了用户的主导权,很可能使用户无法舒适地阅读。
</p>
<p>
如果设计者使用像素为单位指定文字大小,大多数的用户将无法缩放文字,因为 Internet Explorer 改变文字大小的方式与别的浏览器不同。Mozilla 和 Opera 可以缩放已经设定像素大小的文字,而Windows 下的IE却不能。
</p>
</div><div id="sbox"><p>
亲和力指的并不只是关于盲人和屏幕阅读器。还有许多人虽然不是盲人,但是有视力障碍 - 你我变老时就会成为他们的一员。
使网站变得更具亲和力的一个最简单的方法就是允许用户改变文字大小;拒绝提供这样的选择就剥夺了用户的主导权,很可能使用户无法舒适地阅读。
</p></div>
</div>
<div id="footer"><h5>仅供演示<a href="http://homepage.yesky.com">网页陶吧</a></h5></div>
</body>
</html> <script language="Javascript">
var now = new Date();
document.write("<img src='http://counter.yesky.com/counter.shtml?CID=54197&AID=-1&refer="+escape(document.referrer)+"&rand="+ now.getTime()  + "&cur="+escape(document.URL)+"' border='0' alt='' width='0' height='0'>");
</script>
<noscript>
<img src="http://counter.yesky.com/counter.shtml?CID=54197&AID=-1&refer=noscriptcounter&cur=noscriptcounter" border='0' width='0' height='0'/>
</noscript>


Tags:   CSS  
责任编辑:申瑞瑞
  • 请文明参与讨论,禁止漫骂攻击。 用户名:新注册) 密码: 匿名:
    评论总数: [ 查看全部 ] 网友评论
    关于我们 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 人才招聘 - 帮助