Closed Bug 1086883 Opened 10 years ago Closed 10 years ago

block with vertical-rl writing-mode is totally misplaced relative to its (horizontal) containing block

Categories

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

defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla36

People

(Reporter: jfkthame, Assigned: jfkthame)

References

(Blocks 1 open bug)

Details

Attachments

(3 files, 1 obsolete file)

Attached file wm11.html
See attached testcase. The red-bordered test <div> should remain in the same place within the black-bordered <div> that contains it; but when writing-mode is set to vertical-rl, it disappears far off the bottom of the screen. (Scroll all the way down to find it, with garbled border as well as misplaced.)
AFAICT, this is caused by writing-mode mixup in nsBlockReflowContext::ComputeCollapsedBStartMargin, resulting in a margin of NS_UNCONSTRAINEDSIZE (or thereabouts) above the orthogonal <div> in this example. I've got an experimental patch that I'll post for review if tryserver is happy with it.
Assignee: nobody → jfkthame
Status: NEW → ASSIGNED
Attached patch Reftest.Splinter Review
Here's a reftest for the issue here, checking that the writing-mode of an inner div doesn't affect its placement. It'll pass harmlessly when writing-mode support isn't enabled.
Attachment #8509539 - Flags: review?(smontagu)
Minor update to fix a failure in conjunction with bug 1083892's patch and test.
Attachment #8510150 - Flags: review?(smontagu)
Attachment #8509538 - Attachment is obsolete: true
Attachment #8509538 - Flags: review?(smontagu)
Attachment #8509539 - Flags: review?(smontagu) → review+
Attachment #8510150 - Flags: review?(smontagu) → review+
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: