请在ie6下打开:ie6_js_hidden_select_bug.html
通过:
document.getElementById('J_Test').style.display = 'none';
可以隐藏select元素。
但是通过:
document.body.id = 'page';
配合css代码:
#page select { display: none; }
在ie6下,无法隐藏select元素。
尝试position, setTimeout, 改变zoom到1.001等方法,均失败。
想起ie6下,臭名昭著的select需要用iframe遮罩的bug,估计和上面的bug根由是一样的:在ie6下,select是windowed element,其表现和普通的HTML elements有本质上的区别。至于究竟为何?估计只能去看微软的源码了。