Menu
Coddy logo textTech

Box-Sizing

Teil des Abschnitts Styling with CSS der HTML-Journey von Coddy. Lektion 39 von 76.

In CSS ist box-sizing eine Eigenschaft, die bestimmt, wie die Gesamtbreite und -höhe eines Elements berechnet werden. Standardmäßig umfassen die Eigenschaften width und height nur die Größe des Inhalts und berücksichtigen weder Innenabstände, Rahmen noch Außenabstände. Durch die Verwendung der Eigenschaft box-sizing kannst du dieses Verhalten jedoch ändern und dafür sorgen, dass die Eigenschaften width und height auch die Größen von Innenabständen und Rahmen einschließen.

Dies kann Layoutberechnungen vereinfachen und unerwartete Probleme bei der Größenanpassung verhindern.

Hier ist die grundlegende Syntax für die Verwendung der Eigenschaft box-sizing:

selector {
    box-sizing: value;
}

value: Das gewünschte Box-Sizing-Verhalten, das eines der folgenden sein kann:

  • content-box: Dies ist der Standardwert. Die Eigenschaften width und height umfassen nur die Größe von content. padding, border und Außenabstände werden außerhalb der angegebenen Breite und Höhe hinzugefügt.
  • border-box: Die Eigenschaften width und height umfassen die Größen von Inhalt, Innenabstand und Rahmen. Außenabstände werden weiterhin außerhalb des Elements hinzugefügt.

Zum Beispiel:

div {
    width: 300px;
    height: 200px;
    padding: 20px;
    border: 5px solid black;
    box-sizing: content-box; /* Default behavior */
}

.container {
    width: 400px;
    height: 300px;
    padding: 30px;
    border: 10px solid red;
    box-sizing: border-box;
}

In diesem Beispiel hat das <div>-Element einen box-sizing-Wert von content-box. Das bedeutet, dass die tatsächlich gerenderte Breite des <div> 300px (Inhalt) + 40px (linkes und rechtes Padding) + 10px (linker und rechter Rahmen) = 350px betragen wird. Die Höhe wird auf ähnliche Weise berechnet.

Andererseits hat das Element mit der Klasse container den Wert box-sizing von border-box. In diesem Fall umfasst die angegebene width von 400px den content, padding und border. Der tatsächliche content-Bereich wird verkleinert, um padding und border aufzunehmen, was zu einer content-Breite von 400px - 60px (linkes und rechtes padding) - 20px (linker und rechter border) = 320px führt. Die Höhe wird auf ähnliche Weise berechnet.

challenge icon

Aufgabe

Einfach

Dir wird ein HTML-Dokument mit zwei Divisionen (<div>) gegeben, jeweils mit einer unterschiedlichen Klasse. Deine Aufgabe besteht darin, die Eigenschaft box-sizing zu verwenden, um zu steuern, wie die Breite und Höhe dieser Elemente berechnet werden. Befolge die folgenden Schritte:

  1. Schreibe eine CSS-Regel, die auf das <div>-Element mit der Klasse <strong>content-box-div</strong> abzielt. Setze width auf 300px, height auf 200px, padding auf 20px, border auf 5px solid blue und box-sizing auf content-box.
  2. Schreibe eine CSS-Regel, die auf das <div>-Element mit der Klasse <strong>border-box-div</strong> abzielt. Setze width auf 300px, height auf 200px, padding auf 20px, border auf 5px solid red und box-sizing auf border-box.

Probier es selbst

<html>
<head>
    <title>Box Sizing</title>
    <style>
        /* Write CSS rules here */
    </style>
</head>
<body>
    <div class="content-box-div">This is a div with content-box.</div>
    <div class="border-box-div">This is a div with border-box.</div>
</body>
</html>
quiz iconTeste dich selbst

Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.

Alle Lektionen in Styling with CSS

Übe selbstständig: Web-Playground