Ich erstelle eine Seite mit DIV
s. Alles funktioniert, außer wenn ich einen DIV erstelle. Ich erstelle sie so (Beispiel):
newdiv {
width: 200px;
height: 60px;
padding-left: 20px;
text-align: left;
}
Wenn ich die padding-left
Eigenschaft hinzufüge , DIV
ändert sich die Breite der Eigenschaft auf 220 Pixel, und ich möchte, dass sie bei 200 Pixel bleibt.
Nehmen wir an, ich erstelle einen anderen DIV
Namen anotherdiv
, der genau der gleiche ist wie newdiv
, und lege ihn hinein, habe newdiv
aber newdiv
keine Polsterung und anotherdiv
hat padding-left: 20px
. Ich bekomme das gleiche, newdiv
die Breite wird 220px sein.
Wie kann ich dieses Problem beheben?
Antworten:
Eigenschaft hinzufügen:
Hinweis: Dies funktioniert in Internet Explorer unter Version 8 nicht.
quelle
Setzen Sie ein div in Ihr newdiv mit
width: auto
undmargin-left: 20px
Entfernen Sie die Polsterung von newdiv.
Die W3 Box-Modellseite enthält gute Informationen.
quelle
Versuche dies
quelle
Wenn Sie Text innerhalb eines Divs einrücken möchten, ohne die Größe des Divs zu ändern, verwenden Sie
text-indent
stattdessen das CSSpadding-left
.quelle
einfach hinzufügen
box-sizing: border-box;
quelle
Ja, das entspricht genau den Standards. So soll es funktionieren.
Nein, newdiv bleibt 200px breit.
quelle
Ändern Sie einfach Ihre Div-Breite auf 160px, wenn Sie eine Auffüllung von 20px haben. Dadurch wird die Breite Ihres Div um 40px erhöht, sodass Sie 40px von der Breite abziehen müssen, damit Ihr Div normal aussieht und nicht durch zusätzliche Breite verzerrt wird Ihr Text ist völlig durcheinander.
quelle