Hallo,
D.h. wenn ich z.B. 1px angebe, werden 2 genommen. Gebe ich 10px an, werden 20 genommen.
Das ist ein allgemein bekannter Bug vom IE, dass er bei gefloateten Elementen den margin verdoppelt. Dem kannst du einfach entgegenwirken, indem du die gefloateten Elemente zusätzlich mit einem display:inline versiehst,
Ja, oder den Margin bei gefloateten Elementen grundsätzlich nicht änderst, sondern den der Elemente in ihnen.
Beispiele:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>Floating Margins</title>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
</head>
<body>
<div style="width:400px; margin:0 auto; border:1px solid black; padding:0;">
<h1>Überschrift1</h1>
<h2 style="float:left; width:150px; margin-left:20px; padding:0; border:1px solid black;">Überschrift2</h2>
<p style="width:200px; border:1px solid black; margin-left:180px; padding:0;">Text<br>Text<br>Text</p>
<h1>Überschrift1</h1>
<h2 style="float:left; width:150px; margin-left:20px; display:inline; padding:0; border:1px solid black;">Überschrift2</h2>
<p style="width:200px; border:1px solid black; margin-left:180px; padding:0;">Text<br>Text<br>Text</p>
<h1 style="clear:left;">Überschrift1</h1>
<h2 style="float:left; width:150px; padding:0; border:1px solid black;"><span style="margin-left:20px; padding:0;">Überschrift2</span></h2>
<p style="width:200px; border:1px solid black; margin-left:180px; padding:0;">Text<br>Text<br>Text</p>
</div>
</body>
</html>
viele Grüße
Axel