| <html> |
| <head> |
| <script src="../../../resources/js-test-pre.js"></script> |
| <style> |
| .container { |
| border: thin solid blue; |
| } |
| |
| .child_with_margins { |
| margin-top: 10px; |
| margin-bottom: 10px; |
| } |
| |
| .separate_top { |
| -webkit-margin-top-collapse: separate; |
| } |
| |
| .separate_bottom { |
| -webkit-margin-bottom-collapse: separate; |
| } |
| </style> |
| </head> |
| <body> |
| <div class="container" id="22px_height"> |
| <div class="child_with_margins" id="zero_height"> |
| <div class="separate_top separate_bottom"></div> |
| </div> |
| </div> |
| <script> |
| if (window.testRunner) |
| testRunner.dumpAsText(); |
| |
| description("Test for https://bugs.webkit.org/show_bug.cgi?id=109956 -webkit-margin-collapse: separate doesn't work correctly for before margins. \ |
| The test basically creates an empty block inside a container with a margin that collapses with children. The empty block has the margins \ |
| set to separate so its height should be 0px. The container is not selfcollapsing so it should have a height of 10px+10px+2px=22px."); |
| shouldEvaluateTo('document.getElementById("zero_height").offsetHeight', '0'); |
| shouldEvaluateTo('document.getElementById("22px_height").offsetHeight', '22'); |
| </script> |
| <script src="../../../resources/js-test-post.js"></script> |
| </body> |
| </html> |