IE7-/Win problems with absolute positioning inside a relative element

In the following test cases a container with green background has position:relative and includes a blue box with position:absolute, left:0, bottom:0. All is wrapped in a box with hasLayout, red border, and 10px vertical padding.

  1. Case 1 is correctly rendered in IE7, but not in IE6-.
  2. In case 2 the text in the relative container is enclosed in a paragraph with vertical margins (30 px). Those correctly stick out of the container (margin collapsing), but also the absolute box moves down, which is not correct.
  3. Case 3 is like case 2, but with hasLayout on the relative container. No more margin collapsing in IE7-/Win (wrong).
This is a green container with position:relative and NO hasLayout
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Nunc elementum fermentum sem. Nullam nulla est, imperdiet quis, ultricies id, suscipit sit amet, odio. Morbi tincidunt dui eget justo. Morbi mi. Quisque tristique vulputate tortor. Ut tempor sapien a purus. Vivamus ultricies pellentesque purus. Mauris ultrices arcu quis nunc.
This is an absolutely positioned box at left:0; bottom:0

This is a green container with position:relative, NO hasLayout, and an internal p with vertical margins
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Nunc elementum fermentum sem. Nullam nulla est, imperdiet quis, ultricies id, suscipit sit amet, odio. Morbi tincidunt dui eget justo. Morbi mi. Quisque tristique vulputate tortor. Ut tempor sapien a purus. Vivamus ultricies pellentesque purus. Mauris ultrices arcu quis nunc.

This is an absolutely positioned box at left:0; bottom:0

This is a green container with position:relative, hasLayout, and an internal p with vertical margins
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Nunc elementum fermentum sem. Nullam nulla est, imperdiet quis, ultricies id, suscipit sit amet, odio. Morbi tincidunt dui eget justo. Morbi mi. Quisque tristique vulputate tortor. Ut tempor sapien a purus. Vivamus ultricies pellentesque purus. Mauris ultrices arcu quis nunc.

This is an absolutely positioned box at left:0; bottom:0

CSS tests home