Thomas Luethi: Darstellungsfehler in Mozilla und Netscape?

Beitrag lesen

Hallo,

nicht ganz korrekt - AFAIK soll von zwei konkurrierenden margin-angaben (also z.b. margin-bottom eines elementes vs. margin-top eines darunter liegenden) immer das maximum genommen werden.

Ich schrieb vereinfachend, sie wuerden miteinander "verrechnet".

Deine Aussage stimmt, wenn es zwei Angaben hat und beide
Werte positiv sind.
Wenn einer positiv und einer negativ ist, kommt Mathematik
zum Einsatz:
Oberes Element  margin-bottom: 15px;
Unteres Element margin-top:    -5px;
Resultierender Abstand:        10px

Wie es genau geht, steht in der Spec. und bei SelfHTML - Dir
brauche ich das ja nicht zu sagen:-)

margin-top:40px vs. gar keine margin-angabe beim darüber liegenden element würden also trotzdem 40px abstand bedeuten.

"Gar keine Angabe" kann eben auch heissen: "Der Margin, den
der Browser bei diesem Element normalerweise macht".
Und dieser Wert ist bei vielen Browsern bei vielen Block-Elementen
(H1, TABLE, P, UL...) deutlich groesser als Null.

Wobei IIRC das "Non-Element" DIV alle Default-Werte auf Null hat,
also sowas wie
div { margin:0; border:0 none; padding:0 }
womit dies als Erklaerung fuer das "Problemchen" des OP
nicht reichen wuerde, da dieser keine sinnvollen (Block-)Elemente
brauchte, sondern eine DIV-Soup...

Gruesse,

Thomas