微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

css – IE7原因为“文本 – 空文本节点”

我正在使用IE Web开发者工具栏来解决问题.列表项下方出现一个空白的空格,我无法从逻辑上找出原因.使用web开发工具栏,我看到在下面的例子1中,在“Text – Google”下面输出一个“Text – Empty Text Node”.讽刺的是,在第二个,在“Google”之后手动插入空格,该文本节点不再出现.如果结果被扭转,对我来说是完全有道理的.任何可能导致这种奇怪行为的想法?

注意:这是发生在IE7,但不是IE8.

<li><a href="www.google.com">Google</a></li> - empty text node appears at end

<li><a href="www.google.com">Google </a></li> - no empty text node

更新:好的,我缩小了这个问题.基本上看来,我正在使用的某些属性之间有冲突.我需要一个标签显示为块,所以当有多行时,它们将正确包装.但是我也不需要任何空格.我不太确定为什么这个空白的空间解决了这个问题,而不是只是“劈”它.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<style type="text/css">
a
{
    display:block;
}
li
{
    zoom: 1;
}
</style>
    </head>
<body>
    <ul>
        <li>
        <div style="background-color:blue">
            <a href="#"><img  src="http://www.google.com/intl/en_ALL/images/logo.gif"/></a>
        </div>
            <ul>
                <li style="background-color:Red"><a href="#">One</a></li>
                <li style="background-color:green"><a href="#">Two </a></li>
                <li style="background-color:Yellow"><a href="#">Three</a></li>
            </ul>
        </li>
    </ul>
</body>
</html>

解决方法

现在< a>是一个块级元素,你必须给它hasLayout.
a
{
    display:block;
    zoom:1;
}

原文地址:https://www.jb51.cc/css/217259.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。