IE嵌套错误隐藏失效。

之前一直没遇到嵌套错误会出现什么问题.
今天遇到了一个bug.很明显是嵌套问题造成的.
代码:

<ul id=”a”>
    <li>123456</li>
</ul>


要往a里面写东西。因为一些因素,ul里要填写的内容,我把它放到另外一个临时div里。

如下:

<div id=”b” style=“display:none;”>
    <li>abcde</li>
</div>

这样我就可以把b的innerHTML写入a里。

由于我们携程旅行网的结构就是个大ul(具体原因不说了)

所以在页面上的代码就是如下:

<ul>
    <li>
        <ul id=”a”>
            <li>123456</li>
        </ul>
        <div id=”b” style=“display:none;”>
            <li>abcde</li>
        </div>
    </li>
</ul>

问题出现了,在火狐/谷歌/Safari/Opera ,b正常隐藏掉了,js也正常。

可是IE系列,js不能执行,b隐藏不掉。不管是通过js,还是css都隐藏不掉。

查了半天原因,才发现原来是嵌套错误(犯了个低级错误)。虽然只是临时把li放到div里,但是也要套个ul或者是直接把div改成ul

标签: , ,

一条评论 发表在“IE嵌套错误隐藏失效。”上

  1. 小山 说:

    是呀,在写好css和js的前提就是先写一个规范的html结构~

留下回复