在IE9中使用IE7标准模式时,空表格单元格的高度为1px。这会导致表格下方的元素显示在页面下方,而不是它们应该显示的位置。我使用下面的代码为此创建了一个JSFiddle:http://jsfiddle.net/Zr7T2/3/
在IE7标准模式下,有没有办法让空表单元格的高度为0px?
我需要在HTML / CSS中解决这个问题,而不是JS。简单地删除空单元格不是一种选择。谢谢!
<!-- 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>IE7 empty cell bug?</title>
</head>
<body>
<table cellpadding="0" cellspacing="0">
<tbody>
<tr><td /></tr>
<tr><td /></tr>
<tr><td /></tr>
<tr><td /></tr>
<tr><td /></tr>
<tr><td /></tr>
<tr><td /></tr>
<tr><td /></tr>
<tr><td /></tr>
<tr><td /></tr>
<tr><td /></tr>
<tr><td /></tr>
<tr><td /></tr>
<tr><td /></tr>
<tr><td /></tr>
<tr><td /></tr>
<tr><td /></tr>
<tr><td /></tr>
<tr><td /></tr>
<tr><td /></tr>
<tr><td /></tr>
<tr><td /></tr>
<tr><td /></tr>
<tr><td /></tr>
<tr><td /></tr>
<tr><td /></tr>
<tr><td /></tr>
<tr><td /></tr>
<tr><td /></tr>
<tr><td /></tr>
<tr><td /></tr>
<tr><td /></tr>
</tbody>
</table>
This text should be at the top of the page. It isn't when running in IE9 with IE7 standards mode turned on.
</body>
</html>
答案 0 :(得分:0)
将单元格高度明确设置为零:
td { height: 0; }
答案 1 :(得分:0)
您可以像这样使用特定于浏览器的CSS:
body
{
*margin-top:-30px; /* IE 7 and below */
}
答案 2 :(得分:0)
我有这个问题。我只是把
<td> </td>
但这是一个不太好的假肢,而不是好的解决方案。