0

这需要一些历史,因此您可以看到一个修复如何变成一个本身需要修复的问题:

看看Firefox中的这个 jsFiddle 。单击该按钮,您将在 HTML 区域的左上角看到一个栗色框。在 Chrome、IE 和 Safari 中,在同一个 jsFiddle 中,带有复选框的单元格将显示栗色框,然后淡出到背景,这就是所需的行为。

请注意,在 js 代码和 css 中,div 被添加到复选框单元格中,然后淡出。这应该是这个 jsFiddle中发现的问题的解决方案。在 js 代码中,您可以看到我使用了 UI 高亮效果,该效果适用于所有浏览器,但在转到背景图像之前会淡化为白色。

为了解决褪色到白色然后到背景图像的问题,以前的 jsFiddle 应该是修复,它只引入了 Firefox 问题。并且尝试使用 UI 的位置效果来解决这个问题并没有帮助。

如果有人可以帮助我找到一个跨浏览器解决方案,该解决方案可以突出显示复选框单元格而不会像突出显示效果那样淡化为白色,我将永远感激不尽。

4

2 回答 2

1

将您的输入包装到 a<div style="position: relative">中,它也可以在 FF 中使用。FF 中表格中的绝对定位似乎是个问题,即使<td>has position: relative.

这是修改后的小提琴

jQuery 也可以仅使用动态包装/展开。通过以下方式修改您的 JS:

 $('#classesTable input:checkbox').wrap('<div style="position: relative"/>').parent().append('<div class="checkwrap" />');

 $('#classesTable .checkwrap').fadeOut(1000, function() {
       $(this).unwrap().remove();
 });

这里这个小提琴

于 2011-06-24T13:51:22.483 回答
0

这不是问题 - 它是你的。Td 不能相对定位。使用 div iside td 宽度position:relative

于 2011-06-24T13:54:48.327 回答