【发布时间】:2010-11-29 18:51:19
【问题描述】:
考虑以下简单的 html 页面标记:
<!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">
<head>
<title></title>
<style type="text/css">
body, html
{
height: 100%;
width: 100%;
}
td
{
border:1px solid red;
}
table
{
border-collapse: collapse;
}
</style>
</head>
<body>
<table cellpadding="0" cellspacing="0" style="width: 100%; height: 100%;">
<tr>
<td style="width: 100%; height: 100%;">
cell 1
</td>
<td style="width: 100%; height: 100%;">
cell 2
</td>
</tr>
<tr>
<td style="width: 100%; height: 100%;">
cell 3
</td>
<td style="width: 100%; height: 100%;">
cell 4
</td>
</tr>
</table>
</body>
</html>
在 IE 7/8/Opera 中,标签的 100% 高度被解释为页面的 100%,而在 Firefox/Chrome/Safari 中,整个表格占据了页面的整个高度,而不是, 表格行填充它们给出的剩余空间。我需要 IE 的行为方式与非 IE 浏览器相同。有没有办法使用 XHTML 过渡文档类型在 IE 中获得相同的行为?我一直在研究一个疯狂的 javascript 例程来模仿这种行为,但我想知道是否有更简单的方法,比如 CSS hack 之类的。谢谢!
【问题讨论】:
标签: javascript css internet-explorer firefox xhtml