Hello out there!
<div style='width:{$width}px; height:{$height}px; border:1px solid grey; padding:1px; margin:0px;'>
<img style='border: 5px solid red; margin:0px; padding:0px;' src=blablabla>
</div>
"$width" bzw. "$height" enthalten Pixelangaben nach "Breite/Höhe des Bildes + 14 Pixel
Was genau steht denn in $width bzw. $height: "42" oder "42px"?
(also korrekt, 10Pixel für den Border des Bildes zzgl. 2+2 Pixel für Border+Padding des divs).
Nein, nicht korrekt. Border und padding kommen ja bei der Berechnung der Breite der Box des 'div' sowieso zu width noch dazu: Boxmodell. [CSS2 §8, SELFHTML]
Leider bekomme ich die korrekte Ausgabe nur im Internet Explorer hin,
[…] ist wohl wirklich ein Bug der Firefox-Engine.
Die Behauptung, der IE würde es richtig machen und Firefox falsch, erweist sich in den allermeisten Fällen als Trugschluss. So auch hier.
Der Firefox hält sich an die Spezufikation; der IE im Quirksmodus nicht. Du solltest IEs unbedingt aus dem Quirksmodus herausholen, dann hat sich dieses Problem erledigt. [SELFHTML]
Ich habe die Pixel auf 10 - obwohl es ja zweifellos 14 sind,
Es sind zweifellos 10.
dann funktioniert es in allen Browsern.
Weil der IE einen weiteren Fehler begeht: Er interpretiert 'widht'/'height' als 'min-widht'/'min-height' und vergrößert Boxen fälschlicherweise eigenmächtig.
See ya up the road,
Gunnar
„Und [dieses Forum] soll […] auch ein Fachforum bleiben und kein Psychologieforum werden.“ (Kirsten Evers)