Closed Bug 455338 Opened 16 years ago Closed 13 years ago

allow all frame classes (any elements) to be absolute positioning containing blocks when position:relative

Categories

(Core :: Layout: Positioned, defect)

defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla10
Tracking Status
blocking-fx --- -

People

(Reporter: dbaron, Assigned: ehsan.akhgari)

References

Details

I thought we had a bug on this, but I can't find one.

The CSS spec says that any element with position:relative can be a containing block for absolutely positioned elements.  We don't currently support this, since only block and inline frames currently support being an absolute positioning containing block.

We should figure out a way to allow all frames to be absolute positioning containing blocks.
Blocks: 450418
Flags: wanted1.9.2?
Flags: wanted1.9.2?
Flags: wanted1.9.2-
Flags: blocking1.9.2-
Blocks: 508335
I guess this does not have a chance for Firefox 4, but what about the next release?
I think the best path to fixing this is perhaps something like:

  (1) add a codepath for dynamic recomputation of overflow areas without reflow (this is also really useful for a bunch of performance optimizations)

  (2) store all absolutely positioned frames in a frame property (probably always on the first continuation), and in DidReflow of *any* continuation of a frame with such a property (probably also needs a frame state bit to be transferred to all continuations), record (in the reflow state?) that we need to reflow the absolute frames when we're done reflowing the deeper of (a) the nearest common ancestor of all the continuations of the frame or (b) the reflow root.
(In reply to comment #0)
> I thought we had a bug on this, but I can't find one.
is this related to bug 63895?
Blocks: 640443
blocking-fx: --- → ?
blocking-fx: ? → -
Blocks: 454749
Ehsan is working on this in bug 10209.
The infrastructure for this has landed in bug 10209.  I'll look into using this infrastructure for the remaining types in the future.
Assignee: nobody → ehsan
Status: NEW → RESOLVED
Closed: 13 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla10
You need to log in before you can comment on or make changes to this bug.