Open Bug 1766530 Opened 3 years ago Updated 3 years ago

auto-width abspos element is mispositioned in orthogonal (nested vertical + horizontal) writing-mode situation

Categories

(Core :: Layout: Positioned, defect)

defect

Tracking

()

People

(Reporter: dholbert, Unassigned)

References

(Blocks 1 open bug)

Details

Attachments

(2 files)

Attached file testcase 1 (deleted) —

STR:

  1. Load attached testcase.

EXPECTED RESULTS:
All three pink boxes should be snapped to the left edge of the viewport.

ACTUAL RESULTS:
The first box (the one with width:auto) is snapped to the right side of its abspos containing block.

I don't think this is just a version of bug 1166120 (content sizing just falling over on itself in the presence of orthogonal writing-modes), since we seem to get things correct when you have width:min-content (the second line in the testcase).

(I'm spinning this bug off of bug 1765664 for the first piece of the testcase there. The rest of that bug was me misunderstanding what was going on, which IanK helped me sort out in bug 1765664 comment 5.)

This testcase demonstrates that we're actually positioning the frame at the top-right corner of its parent, not at the top-right corner of its abspos containing block.

Based on this testcase, it looks almost like we're doing something like the following: when determining the static position, we're thinking that the width:auto means "fill the available width" (like it would for regular in-flow layout); and we're determining the element's top-right corner based on that faulty assumption.

Blocks: writing-mode
Component: Layout → Layout: Positioned
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: