IE6-/Win doubles left/right margin of floated boxes

Some left floats with varying left margin. When positive this is doubled in IE6-. Not when negative.
In IE7- when a float is completely pulled outside the container an inner clear would not work. A fix consists in adding a positive right margin to the float, big enough to enter the container. Last three cases do not have this fix, the orange clear stay 'hight' (it does not clear the preceding float; the positioning of the following float is obtained with a fixed height container.)

+30
+20
+10
0
-10
-20
-30
-40
-50
-60
-40
-50
-60
 

As above, with display inline on the floats.

+30
+20
+10
0
-10
-20
-30
-40
-50
-60
-40
-50
-60
 

Some right floats with varying right margin. When positive this is doubled in IE6-. Not when negative.
In IE7- when a float is completely pulled outside the container an inner clear would not work. A fix consists in adding a positive left margin to the float, big enough to enter the container. Moreover without this fix (last three cases) the negative margin is not able to pull the float at a distance from the container, like it had a minimum value equal to minus the float's width.

+30
+20
+10
0
-10
-20
-30
-40
-50
-60
-40
-50
-60
 

As above, with display inline on the floats.

+30
+20
+10
0
-10
-20
-30
-40
-50
-60
-40
-50
-60

CSS tests home