2

(与其他帖子相关,稍作改进,用例可能与那个略有不同?)。

这需要几个小时来缩小我页面的 HTML/CSS 组合中具体导致 IE9 崩溃并出现“Internet Explorer 已停止工作”错误的范围(如果我选择调试,具体错误是“iexplore.exe 中 0x602508cb 处的未处理异常: 0xC0000005: 访问冲突读取位置 0x00000018。” IE 8 没有崩溃。我将其缩小为以下内容:

要重现,请使用这个(看似)简单的表格创建一个 HTML 页面:

<table>
    <tr>
        <td colspan="2">
            TEST ROW
        </td>
    </tr>
    <tr class="tr1" id="tr1">
        <td class="blank">
            test
        </td>
        <td>
            test
        </td>
    </tr>
</table>

添加这个CSS:

<style>

    .tr1 td, th
    {
        border: 1px solid Black;
    }        

    td.blank
    {
       border:0 !important;
    }        

    table
    {
        border-collapse: collapse;
    }

</style>

添加此按钮(或任何其他机制)以隐藏第二行:

<input type="button" onclick="document.getElementById('tr1').style.display='none';"
    value="Hide Table Row" />

如果单击该按钮,您将可靠地重现 IE9 错误。

无论如何,我想发布这个错误,因为我找不到与错误代码“iexplore.exe 中 0x602508cb 处的未处理异常:0xC0000005:访问冲突读取位置 0x00000018”匹配的单个帖子。并希望这可以帮助下一个人。

是否还有其他人想要提供任何解决方法?你遇到过这个bug吗?IE 10/Windows 预览组中的任何人都知道 IE 10 是否有同样的问题?如果没有,您介意将此作为错误提交吗?

4

2 回答 2

1

以下是一些解决方法 - 它们都有效,但可能不适合您的情况:

  • 从空白 0 边框中删除 !important (我无法使用此解决方案,因为我确实不需要边框 - 这很重要 - 双关语;))
  • 或者使边框 1px 纯白色而不是边框​​ 0(这是我使用的解决方案,并且在某种程度上,边框不应该从 1px 变为 0px 并且可能是 IE9 中错误的根源我猜?)
  • 或摆脱边界崩溃:崩溃;(我不能使用它,因为我希望它们折叠起来)
  • 或者摆脱 colspan (我不能因为我需要它)
  • 或者选择编织而不是为不断变化的浏览器编写软件(再说一次,我不能,因为我不喜欢编织;))
于 2012-09-19T17:42:24.337 回答
0

谢谢@AdamE ...您的解决方法很有帮助。

我处于相同的位置:我需要在带有折叠边框和偶尔 colspan 的桌子上隐藏一行(....而且我也不喜欢编织 :)

我使用了相当于Xrumet 的答案来临时应用您/他的解决方法:

$myTable.css("borderCollapse", "separate");
$myRow.hide();
$myTable.css("borderCollapse", "");

做这项工作。

于 2013-08-09T01:39:21.463 回答