Closed Bug 36710 Opened 25 years ago Closed 24 years ago

inline background/border should paint above floats [BG]

Categories

(Core :: Layout, defect, P3)

x86
Linux
defect

Tracking

()

VERIFIED FIXED

People

(Reporter: dbaron, Assigned: dbaron)

References

Details

(Keywords: css1, Whiteboard: [fix in hand])

Attachments

(1 file)

DESCRIPTION: Mozilla currently does not comply with section 9.5 of CSS2 which says: A float can overlap other boxes in the normal flow (e.g., when a normal flow box next to a float has negative margins). When an inline box overlaps with a float, the content, background, and borders of the inline box are rendered in front of the float. When a block box overlaps, the background and borders of the block box are rendered behind the float and are only be visible where the box is transparent. The content of the block box is rendered in front of the float. Right now Mozilla paints the text over the float, but not the inline background/border. This is done so that inline background/border doesn't paint over inline text (mainly because Kipp wanted http://www.w3.org/Style/CSS/Test/current/sec42.htm to look OK, even though it probably should look bad). This could be fixed in 2 ways: * add a 4th paint layer, so sec42 still looks good * Just move inline background/border into the FOREGROUND paint layer STEPS TO REPRODUCE: * load attached test case ACTUAL RESULTS: * the red background and green border of the inline element is covered by the float where the inline overlaps the float EXPECTED RESULTS: * the red background and green border should be on top of the float DOES NOT WORK CORRECTLY ON: * Linux, mozilla, 2000-04-20-09-M16 ADDITIONAL INFORMATION: How this bug is fixed should effect how bug 27757 should be fixed. Bug 27757 should perhaps also be considered in deciding how to fix this bug.
Status: NEW → ASSIGNED
Target Milestone: --- → M17
David: Is this a CSS-1 issue or CSS-2? If CSS-2, it'll get "FUTURE'd"
CSS1. But don't look for it in the CSS1 specification. This is one of those things that was cleared up in CSS2.
Keywords: css1
I'm not so sure about that. 'float' is CSS1, but I think the painting order rules were undefined until CSS2.
Taking this bug.
Assignee: buster → dbaron
Status: ASSIGNED → NEW
Status: NEW → ASSIGNED
Target Milestone: M17 → M18
Nominating for nsbeta3 - this should be a trivial fix (probably a one line change, although I haven't looked yet), and it's a CSS compliance issue.
Keywords: correctness, nsbeta3
Whiteboard: [fix in hand]
Summary: inline background/border should paint above floats → inline background/border should paint above floats [BG]
Fix checked in 2000-09-04 14:45 PDT.
Status: ASSIGNED → RESOLVED
Closed: 24 years ago
Resolution: --- → FIXED
Verified fixed in the 2001010203 build.
Status: RESOLVED → VERIFIED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: