Closed Bug 201001 Opened 17 years ago Closed 15 years ago

cells in a table get messed up when placing the table into two nested, absolute positioned DIVs

Categories

(Core :: Layout: Block and Inline, defect)

x86
Linux
defect
Not set

Tracking

()

RESOLVED FIXED

People

(Reporter: semmel, Assigned: mats)

References

Details

(Keywords: testcase)

Attachments

(4 files)

User-Agent:       Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.4a) Gecko/20030401
Build Identifier: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.4a) Gecko/20030401

The horizontal cell alignment doesn't work if you place the table into two
nested, absolute positioned DIVs.

example code:

<style type="text/css">
div {position:absolute;}
td {border-width:1px;border-style:solid;}
</style>
<body>
<div>
<div>
<table>
<tr><td>hier steht was</td><td>hier auch</td><td>und hier nochmal</td></tr>
<tr><td>links</td><td>mitte</td><td>rechts</td></tr>
</table>
</div>
</div>
</body>


Reproducible: Always

Steps to Reproduce:
At a guess, the table is optimizing away something it should not.... Bernd, any
idea where I would look to get a good idea of what's happening?
Attached file testcase
Boris sorry but I can not resist: if all else fails may be you should read the
manual. ;-)
http://lxr.mozilla.org/seamonkey/source/layout/doc/frame_reflow_debug.html
Attached file reflow log
It looks like the table is missing the second resize reflow. My blind guess is
around
http://lxr.mozilla.org/seamonkey/source/layout/html/table/src/nsTableFrame.cpp#2047
and unconstrained resize reflows - tables dont like them, I thought that should
never happen.
Attached file ref. reflow log
from the previous reflow log
initial reflow

area 025EDE30 r=0 a=UC,UC c=UC,UC cnt=860 

resize reflow

area 025EDE30 r=2 a=UC,UC c=UC,UC cnt=895 

Ok I can understand that frames that shrink wrap dont know how large will be
the area, so they make a unconstrained initial reflow. But after this reflow
they should know the size and not issue a unconstrained resize reflow. For me
that translates like: ehm I changed my size from unknown to unknown, what a
difference and now please children guess how large I am.
the block reflow is totally horked for the two div case and why four reflows are
necessary in the one div case also seems to be a mystery
Assignee: table → block-and-inline
Status: UNCONFIRMED → NEW
Component: Layout: Tables → Layout: Block & Inline
Ever confirmed: true
QA Contact: madhur → ian
*** Bug 207675 has been marked as a duplicate of this bug. ***
Assignee: core.layout.block-and-inline → mats.palmgren
Depends on: 201897
Keywords: testcase
-> FIXED (by bug 201897)
Status: NEW → RESOLVED
Closed: 15 years ago
Resolution: --- → FIXED
*** Bug 276974 has been marked as a duplicate of this bug. ***
You need to log in before you can comment on or make changes to this bug.