Lol你要踢自己,只是在IE8上測試了這一點,我得到了相同的,不知道爲什麼,然後我想起了舊學校的HTML ..添加到您的表。
<table cellpadding="0" cellspacing="0" border="0">
我得到的也是1px的空間,補充說,然後消失了。另外,請嘗試在樣式表中使用*來減少填充和邊距。然後添加類來控制你的表。這是我測試過的代碼。
<html><head><title></title>
<style>
* { padding:0; margin:0; }
.visiblerow { background:#ccc; }
.visiblecell { padding: 10px; margin: 10px; }
.hiddenrow { background:#000; display: none; }
.hiddencell { padding: 0px; margin: 0px; }
</style>
</head>
<body>
<table cellpadding="0" cellspacing="0" border="0">
<tr class="visiblerow">
<td class="visiblecell">test</td>
</tr>
<tr class="hiddenrow">
<td class="hiddencell">hide me</td>
</tr>
<tr class="visiblerow">
<td class="visiblecell">test</td>
</tr>
</table>
</body>
</html>
從IE8中的表標籤中刪除cellpadding,間距,邊框,你會看到1px的空間返回。現在,在定義了類的同時,您還可以創建一個很好的JavaScript函數,以便切換行上的類。
哪個版本的IE? JSFiddle在IE9以上工作正常。 –
不幸的是8.沒有辦法繞過它。 –
在IE中有沒有默認的填充行?也許如果你重置它,你將沒有更多的空白空間(你可以看看IE開發者工具並檢查你的行) – Nico