2010-05-05 29 views
0

我用jquery编写HTML接口。 页面上有可编辑的出版物列表,用户可以单击任何出版物来编辑详细信息。弹出窗口随数据一起显示,并且有作者列表嵌入到详细信息表单中。有编辑/删除按钮针对每个人+“添加新作者”按钮。 用户在没有页面重新加载的情况下操纵作者。当我插入新的作者时,会有新的编辑/删除按钮被动态创建,嵌入到页面中。HTML动态标签插入看起来不同于静态布局

我插入标签是这样的:

<td class="author-actions"> 
    <img onclick='edit(id)' .../> 
    <img onclick='delete(id)' .../> 
</td> 

其实都一样是从网络服务器发送出现弹出窗口,当HTML布局。 但不知何故,它看起来不同。尽管萤火虫展示了相同的css属性,但图像之间还有额外的空间。

如果我选择鼠标插入的布局与IE浏览器,不知何故,它可以重新排序,并成为像这些,通过网络服务器发送相同的样子。

它可能是什么?

+0

我认为你的问题在于IE和firefox(以及几乎所有的浏览器)对于他们认为默认网页应该看起来像什么不同。尝试查找“CSS重置”页面。它是您在文件顶部的一组CSS命令,因此可以通过后面的规则首先应用,并将它们设置为良好的一致空白状态。 – thecoshman 2010-05-05 13:02:23

+0

“检查元素”图像并查看FireBug HTML选项卡,查看图像周围的元素。可能是不必要的空白。 – 2010-05-05 13:14:09

+0

是的,那是真的。使用jquery(append.append)构造页面没有换行符,但静态布局有。 – 2010-05-05 17:12:16

回答

1

图像是内联元素,并且如果在每个img之间存在任何换行符或空格(如段落中的单词),将在每个元素之间添加一个空格。您可以通过删除元素之间的任何空格/换行符来解决此问题。

+0

是的,我的静态布局有换行符,但jquery构建(.append.append ...)不插入任何换行符或空格:) – 2010-05-05 17:14:02

0

当您有超链接的图像时,这一点尤为明显。

<a href="http://www.google.com/"> 
    <img src="google_logo.png" width="32" height="32" border="0"/> 
</a> 

alt text http://img179.imageshack.us/img179/8580/blueunderline.png

上述规定,你经常会得到“额外蓝色下划线”的效果,由于收盘前</a>后的图像中的空白。

解决方法是简单地删除空格。

+0

谢谢,它的工作原理! :) – 2010-05-05 17:15:35