在href之前img标签之后的神秘空间

时间:2013-06-17 20:22:59

标签: html image href

我在img和href标签之间出现了一个神秘的空间。我的链接,转发到word文档前面有一个小图标后面的空格,实际上不应该在那里。奇怪的是,只有当链接的扩展名为.doc时,空格才会出现,但当我将其更改为.docx或扩展名为.html时,该空格会消失。

此代码......

<img  src="../images/icon/wordicon_small.gif" />
    <a href="../docs/template.doc" target="_blank">template</a></p>
<br/>
 <img  src="../images/icon/wordicon_small.gif" />
 <a href="../docs/template.docx" target="_blank">template</a>   

转换为:

http://postimg.org/image/59fam7ny1/

我真的很困惑。甚至不知道从哪里开始。我的CSS规范似乎没问题,并没有引起我的怀疑。任何人都知道问题可能是什么?

2 个答案:

答案 0 :(得分:2)

您在第一个<a href>

之前有几个空格

通过删除空格,问题应该得到解决。

如果从脚本生成空格到html,那么您需要检查脚本中几个语句之间处理doc和docx链接的差异。

答案 1 :(得分:2)

图像和链接之间有空白字符(空格,换行符等),因此它们之间应该有一个空格,但这应该只是一个空格,就像在第二组元素之间一样。一行中的多个空白字符会折叠到一个空格中。

尝试重新键入第一个图像和链接之间的空格。我的猜测是你在那里有一个不间断的空间(ASCII 160)。这不算作空格字符,因此它不会折叠成带有空格和换行符的单个空格。

有时,不间断的空格会导致文本或元素之间产生额外的间距,因为它们不会崩溃,例如:

Price: &nbsp; &nbsp; &nbsp; &nbsp; $0.99

显示为:

价格:0.99美元

&nbsp;是非中断空间的HTML实体,但您也可以将其键入常规字符。你如何做到这一点取决于编辑器,但在某些情况下使用ctrl + space。