7

所以,我遇到了一个我一直试图弄清楚的问题。我在我的 DOM 结构中得到了额外的一行文本(或者看起来如此),据我所知,它是由浏览器添加的。这发生在我运行代码的所有浏览器(IE8、IE9、Chrome 20、Firefox 11)中,我想删除它。

这是我的 HTML:

<div id="wrapper">
    <div id="inner">
        <div class="item">
            content
        </div>
    </div>
</div>​

这是我的 CSS:

#wrapper {
    bottom: 0;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
}
.item {
    float: left;
    width: 171px;
    position: relative;
    background: #fc0;
}

这是一个显示我的问题的 jsfiddle:http: //jsfiddle.net/henrikandersson/wMg2m/

如您所见,顶部和黄色项目之间有一个间隙,据我所知,这是由#inner-div 上方的一行不应该存在的文本引起的。

4

3 回答 3

12

&65279;关闭>包装器 div后,您有一个不可见的控制命令。它实际上是 HTML 编码的字节顺序标记

只需删除那个,你会没事的。

看到这个更新的小提琴

于 2012-07-09T10:12:26.037 回答
5

在那之后你有一个特殊的字符<div id="wrapper">是不可见的。

所以这有效:

<div id="wrapper">
    <div id="inner">
        <div class="item">
            s
        </div>
    </div>
</div>

我重新输入了您的代码,这解决了问题。

问题可能是复制和粘贴代码,或您的文本编辑器。

Notepad++是最好的免费 Windows 文本编辑器。

我通过将代码粘贴到 Notepad++ 中的 ANSI 编码文本文件中发现了问题。ANSI 无法显示该字符,因此它更改为?.

于 2012-07-09T10:12:14.943 回答
1

添加

#inner { float:left; }

http://jsfiddle.net/wnhqY/

于 2012-07-09T10:12:20.603 回答