Box-Sizing
Code Sources Icon Code Sources Icon

Wenn Margin, Padding und Border alle auf ein Element angewendet werden kummulieren sich die Werte im Standardverhalten der Browser. Diese Strategie kann störend auf ein Layout wirken. Mit der CSS-Eigenschaft "box-sizing" kann das Verhalten des "Box-Model" geziehlt beinflusst werden.
Der Quelltext wurde erfolgreich in die Zwischenablage kopiert.
HTML Elemente

Aufgabe 11> weiter

Im Editor sind zwei Absätze vorbereitet. Beide sind im body nebeneinander platziert und haben einen Grauen Hintergrund. Sie besitzen keine individuellen Grössenangaben, daher teilen sie ihren Platz gleichmässig (Flex-Box-verhalten).
Box-Sizing: Beide Boxen zeigen ihr Rechen-Verhalten in Bezug auf den Inhalt (Content-Box) oder Border (Border-Box).

  • p.box1 > box-sizing: content-box;
  • p.box2 > box-sizing: border-box;

Verändere die Werte und setze zusätzliche Eigenschaften, um das Verhalten zu prüfen!

  1. Verändere die Werte von "box-sizing" für "p.box1" und "p.box2", beachte wie sich die beiden Boxen verhalten. Beispiel:
            p.box1 {
                box-sizing: border-box;
                border: 5px solid red;
                max-width:300px;
                height:80px;
                margin:10px;
                padding:10px;
            }
            p.box2 {
                box-sizing: content-box;
                border: 5px solid blue;
                max-width:300px;
                height:80px;
                margin:10px;
                padding:10px;
            }
  2. Du kannst verschiedene Werte für "width", "border-width" oder "padding" eingeben. Beachte das Verhalten.
  3. Wann werden die Werte von Border und Padding kummuliert, wann nicht?
  4. Experimentiere mit den verschiedenen Eigenschaften und Werten des Box-Model's. Beispiel:
                box-sizing: ... ;
                border: ... ;
                width: ... ;
                height: ... ;
                margin: ... ;
                padding: ... ;
  5. Prüfe das Verhalten im HTML-Bereich.
  6. Häufig wird diese CSS-Eigenschaft generell für alle HTML-Elemente gesetzt, zusätzlich werden alle Standardmässig gesetzten Abstände zurückgesetzt.
            * {
                box-sizing: border-box;
                margin:0;
                padding:0;
            }
DB-Table: cssbasic11