UL7内的IE7间距

时间:2009-09-03 16:51:28

标签: css internet-explorer internet-explorer-7

有人可以解释为什么IE7坚持在这个例子中在表和ul之间放置一个空格?它似乎不会发生在IE8或FF中。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<body>
    <ul style="background-color: Blue;">
        <li>
            <table cellpadding="0" cellspacing="0" border="0" width="100%" style="background-color: Red">
                <tr>
                    <td>
                        <img style="display: block" src="http://www.google.com/intl/en_ALL/images/logo.gif"
                            height="25" border="0" width="150" />
                    </td>
                </tr>
            </table>
            <ul style="background-color: Green">
                <li>One</li>
                <li>Two</li>
            </ul>
        </li>
    </ul>
</body>
</html>

3 个答案:

答案 0 :(得分:4)

您需要将hasLayout提供给包含该表和ul。

的li
  <ul style="background-color: Blue;">
    <li style="zoom:1;">
        <table cellpadding="0" cellspacing="0" border="0" width="100%" style="background-color: Red">

答案 1 :(得分:2)

所有浏览器都有不同的默认样式。有些人比其他人更有意义。尝试使用CSS Reset来平衡比赛场地,可以这么说。

答案 2 :(得分:1)

之前我曾使用Internet Explorer解决过这个问题,这就是解决方案:删除</td></tr>标记之间的空格。这就是你的HTML应该是这样的:

</td></tr></table>

浏览器在</td></tr>之间创建一个TextNode,这是您在页面中看到的额外空间。