[Webkit-unassigned] [Bug 74976] Element still flowed below parent after changing from block to inline-block

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Fri May 11 16:44:15 PDT 2012


https://bugs.webkit.org/show_bug.cgi?id=74976





--- Comment #20 from Eric Seidel <eric at webkit.org>  2012-05-11 16:43:19 PST ---
Here is a layout test:
<!doctype html>
<body>
<a id="target"><b>ONE</b><b id="two">TWO</b></a>
<script>
window.target = document.getElementById("target");
window.two = document.getElementById("two");

window.target.offsetTop; // force a layout
window.two.style.display = "block";
window.target.offsetTop; // force a layout
window.two.style.display = "inline";
</script>
</body>

And resulting render tree:

layer at (0,0) size 800x600
  RenderView at (0,0) size 800x600
layer at (0,0) size 800x52
  RenderBlock {HTML} at (0,0) size 800x52
    RenderBody {BODY} at (8,8) size 784x36
      RenderBlock (anonymous) at (0,0) size 784x18
        RenderInline {A} at (0,0) size 35x18
          RenderInline {B} at (0,0) size 35x18
            RenderText {#text} at (0,0) size 35x18
              text run at (0,0) width 35: "ONE"
      RenderBlock (anonymous) at (0,18) size 784x0
      RenderBlock (anonymous) at (0,18) size 784x18
        RenderInline {A} at (0,0) size 39x18
          RenderInline {B} at (0,0) size 39x18
            RenderText {#text} at (0,0) size 39x18
              text run at (0,0) width 39: "TWO"
        RenderText {#text} at (0,0) size 0x0
        RenderText {#text} at (0,0) size 0x0

You can see that even after restoring "two" to being inline, the "target" is still wrapped in an anonymous block from the continuation.

Basically the continuation is not getting cleaned up. :(

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the webkit-unassigned mailing list