在FireFox中,在Tr中显示div的css很好,但是IE增加了行的宽度

在FireFox中,在Tr中显示div的css很好,但是IE增加了行的宽度,css,html,tablerow,Css,Html,Tablerow,我很难弄清楚到底发生了什么以及如何修复它 我有一些div,其中包含一些图标,这些图标在显示表格数据时会导致宽度问题。如果我删除了包含图标的div,那么行的宽度将以我希望的方式结束,请参见下面的firefox示例 这是Firefox中的视图,我希望看到红色圆圈中图标的位置,它们在相同的y坐标上对齐,或者大约在y坐标上: 以下是IE7中的视图,请注意图标和灰线(即表格行)的宽度: 以下是HTML: <table> <tbody> <tr> <

我很难弄清楚到底发生了什么以及如何修复它

我有一些div,其中包含一些图标,这些图标在显示表格数据时会导致宽度问题。如果我删除了包含图标的div,那么行的宽度将以我希望的方式结束,请参见下面的firefox示例

这是Firefox中的视图,我希望看到红色圆圈中图标的位置,它们在相同的y坐标上对齐,或者大约在y坐标上:

以下是IE7中的视图,请注意图标和灰线(即表格行)的宽度:

以下是HTML:

<table>
 <tbody>
  <tr>
    <td>
        <span>stuff 1</span>
        <span>stuff 2</span>
        <div class="prop_edit"><img class="img_height14" src="edit.jpg"></div>
        <div class="prop_archive"><img class="img_height14" src="archive.jpg"></div>
        <div class="prop_delete"><img class="img_height14" src="delete.jpg"></div>
        <div style="display:none;"> 
             <div>Links Here</div>
        </div>
     </td>
  </tr>
</tbody>
我已经尝试了很多不同的css的东西,但我真的只是想找出一些办法。有人能给我一些建议吗


提前感谢。

您为什么需要部门?只需将图像本身浮动到右侧即可。就像我告诉过其他一百万人的那样,你不能在一张表中使用除法而不产生一些你无法修复的负面影响,它们不应该存在

我的猜测是正确的:-30px被解释为将30px添加到右侧以腾出空间。不过,将图像向右浮动将是一个更好的解决方案,您可以在图像周围添加一个边距,以适当地隔开它们

此外,您应该先将任何内容向右浮动,而不是在内容之后。大多数浏览器通常会将浮动到右边的内容放在新行上,如果它在内容之后,这是正确的行为。这是因为默认情况下,一个分区将自己开始一个新行,然后它将被修改为向右浮动,通常在它已经创建的同一新行上


所以,是的,有一些不同的事情导致了问题。不过,并不是所有问题都是由这件事引起的。

好吧,谢谢你让我成为你的百万富翁和一个客户。我来到这个论坛是因为我对网络开发还不熟悉,尤其是在设计和布局方面,我可以使用人们愿意提供的任何技巧,比如你的……这个论坛是我参加过的最好的论坛。我修复了您建议的问题,将图标的图像标记移到表格行内容的开头,然后将图像标记移到右侧,其他内容保持原样,这就是我希望的工作方式。谢谢你的帮助。
.prop_edit{
float:right;
position: relative;
top: 0px;
right:50px; 

}
.prop_archive{
    float:right;
    position: relative;
    top: 0px;
    right:10px;
}
.prop_delete{
    float:right;
    position: relative;
    top: 0px;
    right: -30px;
}
.img_height14{
    height:14px;
    vertical-align:top;
    position:relative;
}