display-contents-acid-dyn-3.html 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. <!DOCTYPE html>
  2. <!--
  3. Any copyright is dedicated to the Public Domain.
  4. http://creativecommons.org/publicdomain/zero/1.0/
  5. -->
  6. <html lang="en-US">
  7. <head>
  8. <meta charset="UTF-8">
  9. <title>CSS Test: CSS display:contents</title>
  10. <link rel="author" title="Mats Palmgren" href="https://bugzilla.mozilla.org/show_bug.cgi?id=907396">
  11. <link rel="help" href="http://dev.w3.org/csswg/css-display">
  12. <style type="text/css">
  13. html,body {
  14. color:black; background-color:white; height:100%; font-size:16px; padding:0; margin:0;
  15. }
  16. iframe { padding:0;margin:0;border-width:0;width:100%;height:90%; color:red; }
  17. </style>
  18. <script>
  19. function runTest(iframe) {
  20. var win = iframe.contentWindow;
  21. var doc = iframe.contentDocument;
  22. doc.body.offsetHeight
  23. var e = doc.querySelectorAll('*');
  24. var contents = new Array;
  25. for (i=0; i < e.length; ++i) {
  26. var elm = e[i];
  27. if (win.getComputedStyle(elm).display == 'contents') {
  28. contents.push([ elm, elm.nextSibling, elm.parentNode ]);
  29. elm.parentNode.removeChild(elm);
  30. }
  31. }
  32. doc.body.offsetHeight;
  33. var i = contents.length;
  34. while(i--) {
  35. var arr = contents[i];
  36. arr[2].insertBefore(arr[0], arr[1]);
  37. }
  38. doc.body.offsetHeight;
  39. }
  40. </script>
  41. </head>
  42. <body>
  43. <iframe src="display-contents-acid.html" frameborder=0 onload="runTest(this)"></iframe>
  44. </body>
  45. </html>