解决IE6下自适应宽度内嵌100%宽度表格问题

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<!--DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"-->
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>T</title>
    <style type="text/css">
     * {margin:0px; padding:0px;}
     #left {
   float:left;
   width:100px;
   height:100px;
      background:#090;
     }
     #center {
      margin:0px 100px;
      background:#009;
      /*height:0px;*/
     }
     #right {
      float:right;
      width:100px;
      height:100px;
      background:#900;
     }
 </style>
</head>
<body>
 <div id="left"></div>
 <div id="right"></div>
 <div id="center">
  <table style="width:100%; background:#ccc;/*width:99%*/"><tr><td>为什么IE下XTHML 1.0 Transitional一定要给全球安防网#center加上height:*px才可以不被挤下来显示呢?</td></tr></table>
 </div>
</body>
</html>

以下是一个三列并列,两边宽度固定,中间自适应的布局
将table改为div则问题相同

在FF下显示正常
在IE6下把顶部的XHTML 1.0 Transitional改为HTML 4.0 Transitional则div正常
或者给center增加高度height:任意值则IE6正常FF异常(FF无法根据center中的内容扩充高度,会影响下方元素布局)
或者将table的width略改小几个像素也正常全球安防网(例如设定99%)
现在想请问下,这个到底是怎么产生的呢?
在IE6下全球安防网,除了设置height与改小width外还有什么办法解决没有?

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<!--DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"-->
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>T</title>
    <style type="text/css">
     * {margin:0px; padding:0px;}
     #left {
   float:left;
   width:100px;
   height:100px;
      background:#090;
     }
     #center {
      background:#009;
      float:left;
     }
     #right {
      float:right;
      width:100px;
      height:100px;
      background:#900;
     }
 </style>
</head>
<body>
 <div id="left"></div>
 <div id="right"></div>
 <div id="center">
  <table style="width:100%; background:#ccc;/*width:99%*/"><tr><td>为什么IE下XTHML 1.0 Transitional没有给#center加上height:*px也可以正常显示呢?</td></tr></table>
 </div>
</body>
</html>

posted @ 2010-08-05 18:50  ph580  阅读(782)  评论(0编辑  收藏  举报