我在所有Internet Explorer版本中都遇到了TABLES的问题,或者更确切地说是TD的高度让我疯狂。
我有以下标记
<table>
<tbody>
<tr style="vertical-align:top;">
<td id="TD1" width="35" colspan="2" style="background-color:yellow; height:1%;">
<div id="DIV1" style="height:10px; background-color:red;"></div>
</td>
<td id="TD2" width="15" rowspan="2" style="height:99%;">
<div id="DIV2" style="height:160px; background-color:green;"></div>
</td>
</tr>
<tr style="vertical-align:top;">
<td id="TD3" width="25">
<div id="DIV3" style="height:60px; background-color:blue;"></div>
</td>
<td id="TD4" width="10">
<div id="DIV4" style="height:80px; background-color:orange;"></div>
</td>
</tr>
</tbody>
</table>
为了更好地理解,您可以在w3schools.com的tryit-editor中执行代码
http://www.w3schools.com/tags/tryit.asp?filename=tryhtml_td_height。
我认为这解释了,我试图解释:)
虽然DIV2的高度小于或等于DIV1和DIV3或DIV4的高度,但它的工作方式与预期的一样。但是当DIV2的高度大于DIV1和DIV3或DIV4的高度时,IE以与TD3和TD4相同的比率上升TD1。
在所有其他浏览器中,只有TD3和TD4加注。 TD1的高度仍与DIV1相同。
有人有想法或解决方法我可以解决这个问题吗?
无表格布局很遗憾没有选择。
答案 0 :(得分:0)
如果没有合适的doctype,您将永远不会让IE尝试像其他更现代的浏览器那样执行。 IE处于怪癖模式。使用这一个:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
或者这个:
<!DOCTYPE html>