解决列高度自适应(相同)的五种方法_经验交流

1.背景图填充

这是使用最广泛的一种做法,无hacks,推荐使用:

<!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(列高度相同的方法)</title>
<style type="text/css">
body{
 padding: 0;
 margin: 0;
 font-size: 12px;
 font-family: Arial, Helvetica, sans-serif;
 line-height: 140%;
 background:#E7DFD3;
}
#middle{
 width: 580px;
 float:left;
 background:#FFFFFF;
 text-align:left;
}

#header,#footer{
 background: #E8E8E8;
 width: 750px;
 text-align:center;
}
#sideleft{
 width: 580px;
 float: left; 
 position:relative;
 margin-left:-580px;
}
#sideright{
 width: 170px;
 float: right;
 position:relative;
 margin: 0 -170px 0 0;
 background: #F0F0F0;
}

#footer{
 clear:both;

}
h1,h2,address,p{
 margin: 0;
 padding: .8em;
}
h1,h2{font-size: 20px;}

</style>
<script type="text/javascript">
// <![CDATA[

function toggleContent(name,n) {
 var i,t='',el = document.getElementById(name);
 if (!el.origCont) el.origCont = el.innerHTML;

 for (i=0;i<n;i++) t += el.origCont;
 el.innerHTML = t;
 }

// ]]>
</script>
</head>
<body>

  <div id="header">
    <h1>Head</h1>
  <div id="middle">
  <div id="sideright">
  <div id="sideleft">
    <h2>sideleft</h2>
 <p><a href="javascript:toggleContent('sideleft',1)">默认长度</a>  <a href="javascript:toggleContent('sideleft',2)">加长页面</a></p>
    <p> 要从固定的、基于像素的设计方法转到弹性的、相对的设计方法并不容易。但是如果恰当利用,就可以成为增强亲和力和易用性的一个自然选择,同时又无须做出设计上的牺牲。 </p>
    <p> 像素是计算机屏幕上的不可缩放的点,而一个
      h3 就是一个字大小的方块。由于字体大小的变化, h3
      代表用户喜欢的文字大小的相对单位。 </p>
    <p> 采用印刷式的固定设计方案或许要容易些,因为如果尺寸不变,则考虑的东西就相对较少。可是如果采用弹性的设计方法,就可以充分利用电脑的显示器和浏览器。 </p>
    <p> 也许你想你的网站以某种特定的方式显示,但是你的用户想看到的可能不一样。任何强加于用户的东西都不利于易用性,从而对网站的成功造成损害。 </p>
    <p> 要从固定的、基于像素的设计方法转到弹性的、相对的设计方法并不容易。但是如果恰当利用,就可以成为增强亲和力和易用性的一个自然选择,同时又无须做出设计上的牺牲。 </p>
  </div>
    <h2>sideright</h2> 
    <p> 要从固定的、基于像素的设计方法转到弹性的、相对的设计方法并不容易。但是如果恰当利用,就可以成为增强亲和力和易用性的一个自然选择,同时又无须做出设计上的牺牲。 </p>
    <p> 像素是计算机屏幕上的不可缩放的点,而一个
      h3 就是一个字大小的方块。由于字体大小的变化, h3
      代表用户喜欢的文字大小的相对单位。 </p>
    <p> 采用印刷式的固定设计方案或许要容易些,因为如果尺寸不变,则考虑的东西就相对较少。可是如果采用弹性的设计方法,就可以充分利用电脑的显示器和浏览器。 </p>
    <p> 也许你想你的网站以某种特定的方式显示,但是你的用户想看到的可能不一样。任何强加于用户的东西都不利于易用性,从而对网站的成功造成损害。 </p>
  </div></div>
  <div id="footer">
    <address>
      Footer
    </address>
    <p>制作:<a href="http://homepage.yesky.com">网页陶吧</a></p>
  </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>

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>

4.采用负的外边界和内补丁相结合

不需要事先知道哪列的高度。

hacks比较多(主要是opera的),但容易使用,推荐:

<!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(DIV+CSS布局中自适应高度的解决方法)</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;
}
/* 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 */
/*\*/
#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;
 }
}
/**/
#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>
  <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>

5.采用负的左右边界和相对定位

下面的例子能较好地解决列高度相同的问题。

三行二列布局,主要内容在左边,网页宽度750px,左列580px,右列170px。

CSS代码:

#middle{ 
 width: 580px; 
 float:left; 
 background:#FFFFFF; 
 text-align:left; 

#sideleft{ 
 width: 580px; 
 float: left;  
 position:relative; 
 margin-left:-580px; 

#sideright{ 
 width: 170px; 
 float: right; 
 position:relative; 
 margin: 0 -170px 0 0; 
 background: #F0F0F0; 

xhtml代码:

<div id="middle"> 
  <div id="sideright"> 
    <div id="sideleft"> 
    </div> 
  </div> 
</div>

从结构看,middle(使用的是左列希望的背景色)在最外面,宽度等于sideleft的宽度,往里一层是sideright,其宽度为170px,浮动方向是右边。但其右面的边界是负的170px,相当于将sideright拉向右面(右面紧贴着middle的右边)170px的位置。而sideleft又是套在sideright里面的,其内容先于sideright出来,左边界是负的580,相当于在sideright左边580px,此时sideleft和middle位置重合。

优点:不需要背景图片,无hacks,完全的自适应高度。

缺点:现在的代码只能左对齐。

演示:

<!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(DIV+CSS布局中自适应高度的解决方法)</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;
}
/* 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 */
/*\*/
#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;
 }
}
/**/
#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>
  <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>

时间: 2024-09-04 21:23:57

解决列高度自适应(相同)的五种方法_经验交流的相关文章

解决IE7以下版本不支持无A状态伪类的几种方法_经验交流

在IE7以下版本一直是不支持无A状态伪类的,通常都要靠Javascript来解决的,最近经常有人问起此类问题,故整理了几种方法,脚本来自国外网站,供大家参考. 方法一 javascript文件,来自Htmldog . 复制代码 代码如下: function suckerfish(type, tag, parentId) {     if (window.attachEvent) {         window.attachEvent("onload", function() {   

施宇宁:分享解决网站用户粘稠度的五种方法

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 网站的用户粘稠度一直长期困扰着各位站长,站长们都希望自己的网站能留住客户,增加自己的资源.那么我们应该怎么去做才能增加网站用户的粘稠度,留住客户呢?首先来分析下都有哪些人群访问我们的网站.一类人群是临时有需要帮助的人,他们通过百度或是谷歌搜索到我们的网站,从而对网站进行访问.例如,有需要搬家的人去搜索搬家公司,寻求搬家服务. 另一类人群是经常

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

解决|自适应 1.背景图填充这是使用最广泛的一种做法,无hacks,推荐使用: <!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

当标题不能显示完整的解决方法_经验交流

其实建议用css控制超出隐藏显示 也就是标题因为设计的宽度问题所以没有显示全,看样子是使用程序来截字的.我想很多网站都遇到这样的情况.为了视觉效果不得不进行截字显示以满足网站的整体视觉效果.通常我们采用截字的方法是两种,一种是通过后台输出时来事先设定一定的字符数量.另一种是通过CSS或是JS来对已经输出的完整的内容进行视觉剪截. 在网页标准没有兴起的时候基本上是采用第一种方式来解决这个问题,直到现在这种方式依然被广泛地使用着.这种方式的好处就是可以准确的剪截字数,而不足可能就是因为剪截的工作在后

Internet Explorer 8 beta 中文版与IE7共存的解决方法_经验交流

web开发人员关心的IE7和IE8共存的问题其实可以很好的解决. 解决方案一:在浏览器右上角有一个"模仿IE7"的切换按钮,但有点麻烦,需要关闭浏览器再重新打开才可以. 解决方案二:在IE8自带的"开发人员工具"中,点击查看选择striet(Internet Explorer7),既可以不重新启动浏览器观看IE7下的效果.可以只提供IE5/7/8三种,并没有IE6模式,还好我有" href="http://tredosoft.com/Multip

网页中英文混排行高不等问题的解决方法_经验交流

基本上快被这个问题搞疯了,症状如下 症状描述:在ie下(6或7,8没有试过)当出现中英文混排,都采用默认字体时,并使用 li 列表做float时,会出现如上图的症状,文字排列上下不对齐的情况.影响了布局的美观性,造成上图情况的原因是中英文的文字基线不同,arial字体的下边缘要比宋体(同为12号)低一个象素,上边缘比宋体矮两个象素,而且英文还有i,y这种上下基线不同的情况.所以当中英文混排对齐时,就会出现明显的高度差异,使排版不均.可见放大图. 采用中英文字均使用宋体的方案 可以解决文字排列不对

在IE下拖动滚动条时border消失的解决方法_经验交流

通常我会用DIV加上border来定义边线,可有时发现在IE下拖动滚动条时border会经常消失,当你刷新时,又会出来.这个问题,我想了很久也没有想出什么原因,所以在些之前用DIV+CSS所写的页面中,这个问题都存在.今天,这个问题,实在太影响最终结果,所在找了一个提示: "以为DIV加上一个高度就能解决."下面传张前后对比图. 至于产生这个问题的原因,我想应该是IE的BUG吧.当你用Mozilla Firefox / Opera 则不会产生这种问题.

DIV CSS网页布局 最小高度(min-height)的妙用_经验交流

假定有二个BOX,我们需要它的最小高度为150PX. CSS div.box1,div.box2{ width: 300px; min-height: 150px; background: #EEE; float: left; margin-right: 20px; } xhtml <div>IE中没保持最小高度为150px</div> <div>最小高度可以设定一个BOX的最小高度, 当其内容较少时时,也能保持BOX的高度为一定</div> 现在的效果,I

固定表格的高度超过指定高度就隐藏的方法_经验交流

经常做网页,可发现原理只用控制<td>的高度,超过了就隐藏是不能用的,应该还有其它的方法,后来发现,原理,只需要在<td>...</td>中加个<div style="height:80px; overflow:hidden"> </div>就可以了,唉