【发布时间】:2010-10-18 08:57:33
【问题描述】:
我正在尝试构建一个简单的单列布局。我希望前两行具有较小的固定高度。第三行应展开以填充页面的其余部分。这是我目前的来源:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<style type="text/css">
html, body
{
height:100%;
width:100%;
border:0px;
margin:0px;
}
</style>
</head>
<body>
<table style="width:100%;height:100%;" cellpadding="0" cellspacing="0">
<tr>
<td style="height:50px;background:red;">Header 1</td>
</tr>
<tr>
<td style="height:10px;background:blue;">Header 2</td>
</tr>
<tr>
<td style="background:green;">Content</td>
</tr>
</table>
</body>
</html>
这在 Safari、Firefox 和 Opera 中运行良好。但是,它在 IE6 和 IE7 中都失败了。在这两个浏览器中,前两行的渲染比它们指定的高度大得多。不仅如此,它们实际上还会随着浏览器窗口的高度动态调整大小。这就像 IE 正在将恒定的像素高度转换为百分比高度。
对我来说重要的是浏览器窗口不显示滚动条,除非第三行的内容大到需要它。将第三个
删除 doctype 声明并恢复为 quirks 模式似乎使问题在 IE 中消失了,但我需要使用 HTML 4.01 过渡,因为这是该应用程序中所有其他现有页面所期望的。
【问题讨论】:
-
出于好奇,您需要 100% 高度布局的原因是什么?
标签: html css internet-explorer html-table