Ich habe ein Div, für das ich eine FESTE Breite und Höhe angeben möchte, und auch eine Auffüllung, die geändert werden kann, ohne die ursprüngliche DIV-Breite / -Höhe zu verringern oder zu erhöhen. Gibt es dafür einen CSS-Trick oder eine Alternative mit Auffüllung?
92
Deklarieren Sie dies in Ihrem CSS und Sie sollten gut sein:
Diese Lösung kann ohne Verwendung zusätzlicher Wrapper implementiert werden.
Dies zwingt den Browser, die Breite gemäß der "äußeren" Breite des Div zu berechnen. Dies bedeutet, dass die Auffüllung von der Breite abgezogen wird.
quelle
Klingt so, als würden Sie das IE6-Box-Modell simulieren. Sie können dazu die CSS 3-Eigenschaft box-sizing: border-box verwenden . Dies wird von IE8 unterstützt, aber für Firefox müssten Sie verwenden
-moz-box-sizing
und für Safari / Chrome verwenden-webkit-box-sizing
.IE6 berechnet die Höhe bereits falsch, Sie sind also gut in diesem Browser, aber ich bin mir nicht sicher, ob IE7 die Höhe im Mackenmodus gleich berechnet.
quelle
Versuchen Sie diesen Trick
Dies zwingt den Browser, die Breite gemäß der "äußeren" Breite des Div zu berechnen. Dies bedeutet, dass die Auffüllung von der Breite abgezogen wird.
quelle
Um ein konsistentes Ergebnis über den Browser hinweg zu erzielen, fügen Sie normalerweise ein weiteres
div
innerhalb des hinzudiv
und geben an, dass keine explizite Breite vorhanden ist, und amargin
. Dasmargin
wirdpadding
für das äußere Div simuliert .quelle