Discuz教程网

IE6/7 and IE8/9/10(IE7模式)依次隐藏具有absolute或relative的父元素和子元素后再显

[复制链接]
authicon dly 发表于 2011-9-16 08:03:40 | 显示全部楼层 |阅读模式
如下
1,两个div,d1中包含d2
2,d1,d2都设置了absolute或relative
3,隐藏d1
4,隐藏子元素d2
5,显示d1
这时IE6/7 and IE8/9/10(IE7模式)中会发现,子元素d2也能显示出了(别忘了,d2被display:none 了哦)。但IE8/9/10/Firefox5/Safari4/Chrome12中子元素d2仍然是被隐藏的。
重现代码
  1. <!DOCTYPE HTML>
  2. <HTML>
  3. <HEAD>
  4. <meta charset="utf-8" />
  5. <title>IE6/7 and IE8/9/10(IE7模式)依次隐藏具有absolute或relative的父元素和子元素后再显示父元素,子元素依然能显示bug</title>
  6. </HEAD>
  7. <BODY>
  8. <p>
  9. <button>1) 隐藏div[id=d1]</button>
  10. <button>2) 隐藏div[id=d2]</button>
  11. <button>3) 显示div[id=d1]</button>
  12. </p>
  13. <div id="d1" style="position:absolute;width:200px;height:200px;border:1px solid gray;">
  14. <div id="d2" style="position:absolute;width:100px;height:100px;background:gold;"></div>
  15. </div>
  16. <script>
  17. var d1 = document.getElementById('d1');
  18. var d2 = document.getElementById('d2');
  19. function hidden_d1() {
  20. d1.style.display = "none";
  21. }
  22. function hidden_d2() {
  23. d2.style.display = "none";
  24. }
  25. function display_d1() {
  26. d1.style.display = "block";
  27. }
  28. </script>
  29. </BODY>
  30. </HTML>
复制代码



上一篇:仅img元素创建后不添加到文档中会执行onload事件的解决方法
下一篇:读jQuery之十二 删除事件核心方法
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

1314学习网 ( 浙ICP备10214163号 )

GMT+8, 2025-5-2 12:23

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表