用JavaScript更新DOM树的节点,先用
element.innerHTML = ”;
把节点内容清空,然后再用
element.appendChild(newNode) ;
插入新节点。
本来操作没什么问题,但是在IE6下,完成 DOM 更新后,附近区域内容的显示会出现问题。
现象是,当光标移动到某些链接上时,部分相邻的内容突然消失!
如果在消失的部分点击一下,那部分内容就恢复正常显示,然后上述问题就彻底消失。
以前写过blog说明这类问题的解决办法,不过那次是因为li元素宽度超过了父层容器。我记得好像是用zoom:1的样式表来处理的,详情请看:IE6 float 异常 消失。
这回不是float的问题,是JavaScript造成的。
解决办法用的是给父层容器定义一个绝对宽度,问题解决!
呵呵 我来了。。
IE的渲染问题,往往可以通过使其haslayout来修正。
最常出现的就是多个元素的宽度高度动态影响,这就会导致IE出现渲染问题,如鬼影。
找找原因,不要让长度动态影响可以解决大部分的IE渲染问题