CSS-Eigenschaften im Zusammenhang mit dem Boxmodell
Dieser Artikel erklärt die CSS-Eigenschaften im Zusammenhang mit dem Boxmodell.
Sie können die Anwendungsfälle und die Syntax für Eigenschaften wie Breite, Höhe und Rand erlernen.
YouTube Video
HTML zur Vorschau
css-box.html
1<!DOCTYPE html>
2<html lang="en">
3<head>
4 <meta charset="UTF-8">
5 <meta name="viewport" content="width=device-width, initial-scale=1.0">
6 <title>Box Model Related CSS Properties</title>
7 <link rel="stylesheet" href="css-base.css">
8 <link rel="stylesheet" href="css-box.css">
9</head>
10<body>
11 <!-- Header -->
12 <header>
13 <h1>Box Model Related CSS Properties</h1>
14 </header>
15
16 <!-- Main content -->
17 <main>
18 <header>
19 <h2>Box Model Related Properties</h2>
20 </header>
21 <article>
22 <h3>width and height</h3>
23 <section>
24 <header><h4>width: 250px; height: 150px;</h4></header>
25 <section class="sample-view">
26 <div class="width-height-fixed">Fixed size(250px,150px)</div>
27 </section>
28 </section>
29 <section>
30 <header><h4>width: 50%; height: 50%;</h4></header>
31 <section class="sample-view">
32 <div class="width-height-percent">Percentage size(50%,50%)</div>
33 </section>
34 </section>
35 <section>
36 <header><h4>width: min-content; height: min-content;</h4></header>
37 <section class="sample-view">
38 <div class="width-height-min-content">This is an example of min-content.</div>
39 </section>
40 </section>
41 <section>
42 <header><h4>width: max-content; height: max-content;</h4></header>
43 <section class="sample-view">
44 <div class="width-height-max-content">This is an example of max-content.</div>
45 </section>
46 </section>
47 <section>
48 <header><h4>width: fit-content; max-width: 150px;</h4></header>
49 <section class="sample-view">
50 <div class="width-height-fit-content">This is an example of fit-content.</div>
51 </section>
52 </section>
53 </article>
54 <article>
55 <h3>margin and padding</h3>
56 <section style="height: auto;">
57 <h4>Margin & padding</h4>
58 <header><h4>margin: 20px; padding: 15px;</h4></header>
59 <section class="sample-view">
60 <div class="margin-padding">margin & padding</div>
61 </section>
62 </section>
63 <section style="height: auto;">
64 <h4>Margin only(no padding)</h4>
65 <header><h4>margin: 20px; padding: 0;</h4></header>
66 <section class="sample-view">
67 <div class="margin-only">margin only</div>
68 </section>
69 </section>
70 <section style="height: auto;">
71 <h4>No margin & padding example</h4>
72 <header><h4>margin: 0; padding: 0;</h4></header>
73 <section class="sample-view">
74 <div class="no-margin">no margin & padding</div>
75 </section>
76 </section>
77 </article>
78 <article>
79 <h3>box-sizing</h3>
80 <section style="height: auto;">
81 <header><h4>box-sizing: content-box</h4></header>
82 <section class="sample-view">
83 <div style="width: 300px;">width: 300px</div>
84 <div class="content-box">Content Box</div>
85 <div style="width: 360px;">width: 360px</div>
86 </section>
87 </section>
88 <section>
89 <header><h4>box-sizing: border-box</h4></header>
90 <section class="sample-view">
91 <div style="width: 300px;">width: 300px</div>
92 <div class="border-box">Border Box</div>
93 </section>
94 </section>
95 </article>
96 <article>
97 <h3>visibility</h3>
98 <section>
99 <header><h4>visibility: visible</h4></header>
100 <section class="sample-view">
101 <div class="visibility-visible">Visible Box</div>
102 </section>
103 <header><h4>visibility: hidden</h4></header>
104 <section class="sample-view">
105 <div class="visibility-hidden">Hidden Box</div>
106 </section>
107 <header><h4>visibility: collapse</h4></header>
108 <section class="sample-view">
109 <div class="visibility-collapse">Collapsed Box (Hold layout space)</div>
110 </section>
111 <header><h4>HTML</h4></header>
112 <pre><div class="visibility-collapse">Collapsed Box (Hold layout space)</div></pre>
113 <header><h4>visibility: collapse</h4></header>
114 <section class="sample-view">
115 <table style="height: 200px; margin: auto;">
116 <tr class="visibility-collapse">
117 <td>Cell 1 (Remove layout space)</td>
118 </tr>
119 <tr>
120 <td>Cell 2</td>
121 </tr>
122 </table>
123 </section>
124 <header><h4>HTML</h4></header>
125<pre>
126<table style="height: 200px; margin: auto;">
127 <tr class="visibility-collapse">
128 <td>Cell 1 (Remove layout space)</td>
129 </tr>
130 <tr>
131 <td>Cell 2</td>
132 </tr>
133</table>
134</pre>
135 </section>
136 </article>
137 </main>
138</body>
139</html>Zum Box-Modell zugehörig
Eigenschaften width und height
1.width-height-fixed {
2 width: 250px;
3 height: 150px;
4 background-color: lightblue;
5}
6
7.width-height-percent {
8 width: 50%;
9 height: 50%;
10 background-color: lightblue;
11}
12
13.width-height-min-content {
14 width: min-content;
15 height: min-content;
16 background-color: lightblue;
17}
18
19.width-height-max-content {
20 width: max-content;
21 height: max-content;
22 background-color: lightblue;
23}
24
25.width-height-fit-content {
26 width: fit-content;
27 max-width: 150px;
28 background-color: lightblue;
29}Die Eigenschaften width und height sind CSS-Eigenschaften, mit denen die Breite und Höhe eines Elements festgelegt werden. Diese werden insbesondere verwendet, um die Größe von Blockelementen, Bildern, Videos usw. festzulegen.
- In der Klasse
width-height-fixedwerden feste Werte für Breite und Höhe angegeben. - In der Klasse
width-height-percentwerden Prozentwerte für Breite und Höhe angegeben.
Werte, die angegeben werden können
Die Eigenschaften width und height können die folgenden Werte haben.
auto: Standardgröße. Passt die Größe automatisch relativ zum übergeordneten Element an.- Feste Werte: Gibt eine feste Breite in Pixeln, Prozentwerten oder relativen Einheiten an.(ex:
100px,50%,10rem)- Zum Beispiel legt
250pxdie Elementgröße auf 250 Pixel fest, und50%setzt sie auf 50% der Größe des übergeordneten Elements.
- Zum Beispiel legt
min-content: Passt sich der Mindestgröße des Inhalts an.max-content: Passt sich der Maximalgröße des Inhalts an.fit-content: Passt die Größe des Elements entsprechend der Größe des Inhalts an.
Festlegen von Minimal- und Maximalwerten
min-width, max-width, min-height und max-height sind CSS-Eigenschaften, die verwendet werden, um Größenbeschränkungen für die Breite und Höhe eines Elements festzulegen. Mit diesen Eigenschaften können Sie sicherstellen, dass ein Element innerhalb eines bestimmten Größenbereichs bleibt.
Eigenschaften margin und padding
1.margin-padding {
2 margin: 20px; /* Margin outside the element */
3 padding: 15px; /* Padding inside the element */
4 border: 1px solid #333;
5 background-color: lightblue;
6 width: 300px;
7 height: 40px;
8}
9
10.margin-only {
11 margin: 20px; /* Margin outside the element */
12 padding: 0; /* No padding inside the element */
13 border: 1px solid #333;
14 background-color: lightblue;
15 width: 300px;
16 height: 40px;
17}
18
19.no-margin {
20 margin: 0; /* No margin outside the element */
21 padding: 0; /* No padding inside the element */
22 border: 1px solid #333;
23 background-color: lightblue;
24 width: 300px;
25 height: 40px;
26}Margin und padding sind Eigenschaften, die in CSS verwendet werden, um den äußeren und inneren Abstand von Elementen innerhalb des Boxmodells zu steuern. Sie werden verwendet, um den Abstand zwischen Elementen zu ändern und das Erscheinungsbild zu ordnen.
- In der Klasse
margin-paddingwerden sowohlmarginals auchpaddingangegeben. Außerhalb des festen Rahmens befindet sich dermargin, und innerhalb des festen Rahmens befindet sich derpadding. - In der Klasse
margin-onlyist nurmarginangegeben. Man sieht, dass der blaue Bereich im Vergleich zur Klassemargin-paddingkleiner ist, da es keinenpadding-Raum innerhalb des durchgehenden Rahmens gibt. - In der Klasse
no-marginsind sowohlmarginals auchpaddingauf 0 gesetzt. Man sieht, dass der blaue Bereich ganz nach links verschoben ist, da es keinenmargin-Raum außerhalb des durchgehenden Rahmens gibt.
Auf diese Weise legt die Eigenschaft margin den äußeren Raum eines Elements fest und passt den Abstand zwischen den Elementen an. Die Eigenschaft padding hingegen legt den inneren Raum eines Elements fest und passt den Abstand zwischen dem Inhalt und dem Rahmen an.
Eigenschaft margin
-
Die Eigenschaft
marginlegt den äußeren Abstand (Margin) eines Elements fest. Sie wird verwendet, um Platz zwischen benachbarten Elementen zu schaffen. Die folgenden Werte können angegeben werden:. -
Feste Werte: Sie können die Größe der Margin in Pixeln, relativen Einheiten (em, rem) oder Prozent angeben.(ex:
10px,1em,5%) -
auto: Nützlich zum Zentrieren von Blockelementen. Wenn die Breite angegeben ist, werden die linken und rechten Margen automatisch angepasst. -
Positive und negative Werte: Positive Werte vergrößern den Abstand, während negative Werte Elemente näher zusammenbringen.
Kurznotation:
1div.one-value {
2 margin: 20px;
3}
4
5div.two-value {
6 /* top-bottom left-right */
7 margin: 10px 5px;
8}
9
10div.three-value {
11 /* top left-right bottom */
12 margin: 10px 5px 15px;
13}
14
15div.four-value {
16 /* top right bottom left */
17 margin: 10px 5px 15px 20px;
18}Die Eigenschaft margin kann ein bis vier Werte haben.
- Ein Wert: Gilt für alle Seiten.
- Zwei Werte: Der erste gilt für oben und unten, der zweite für links und rechts.
- Drei Werte: Gilt in der Reihenfolge oben, links und rechts, unten.
- Vier Werte: Gilt in der Reihenfolge oben, rechts, unten, links.
padding-Eigenschaft
Funktion:
-
Die Eigenschaft
paddinglegt den inneren Abstand (Padding) eines Elements fest. Sie wird verwendet, um Platz zwischen dem Inhalt und dem Rahmen eines Elements zu schaffen. Die folgenden Werte können angegeben werden:. -
Feste Werte: Gibt die Größe des Abstands an.(ex:
10px,1em,5%) -
Negative Werte können nicht verwendet werden. Abstandswerte können nur als positive Zahlen angegeben werden.
Kurznotation:
1div.one-value {
2 padding: 20px;
3}
4
5div.two-value {
6 /* top-bottom left-right */
7 padding: 10px 5px;
8}
9
10div.three-value {
11 /* top left-right bottom */
12 padding: 10px 5px 15px;
13}
14
15div.four-value {
16 /* top right bottom left */
17 padding: 10px 5px 15px 20px;
18}Ähnlich wie bei margin können Sie ein bis vier Werte angeben.
- Ein Wert: Gilt für alle Seiten.
- Zwei Werte: Der erste gilt für oben und unten, der zweite für links und rechts.
- Drei Werte: Gilt in der Reihenfolge oben, links und rechts, unten.
- Vier Werte: Gilt in der Reihenfolge oben, rechts, unten, links.
box-sizing-Eigenschaft
1/* Default content-box : 300px + 2 * 20px + 2 * 10px = 360px */
2.content-box {
3 width: 300px;
4 padding: 20px;
5 border: 10px solid blue;
6 box-sizing: content-box;
7 background-color: lightblue;
8}
9
10/* Using border-box */
11.border-box {
12 width: 300px;
13 padding: 20px;
14 border: 10px solid red;
15 box-sizing: border-box;
16 background-color: lightcoral;
17}box-sizing ist eine CSS-Eigenschaft, die steuert, wie die Breite und Höhe eines Elements berechnet werden.
- In der
content-box-Klasse beträgt die Breite des Elements 360px. Diewidthbeträgt 300px, wobeipaddinglinks und rechts zusammen 40px undborderlinks und rechts zusammen 20px ausmachen, was insgesamt 360px ergibt. - Im
border-boxbeträgt die Breite des Elements 300px.paddingundbordersind in der angegebenenwidthenthalten.
Werte von box-sizing
Es gibt hauptsächlich zwei Werte für box-sizing: content-box und border-box, wobei content-box der Standardwert ist.
content-box
1.content-box {
2 box-sizing: content-box;
3 width: 200px;
4 padding: 20px;
5 border: 10px solid black;
6}
7/*
8260px = 200px(width) +
920px(padding-left) + 20px(padding-right) +
1010px(border-left) + 10px(border-right)
11*/Wenn content-box angegeben ist, werden nur die Breite und Höhe des Inhalts durch width und height gesetzt. padding und border werden hinzugefügt, um die endgültige Größe zu bestimmen. Mit anderen Worten, width und height beziehen sich nur auf den Inhaltsbereich.
In diesem Beispiel beträgt die angegebene width 200px, aber mit den Breiten von padding und border auf der linken und rechten Seite beträgt die endgültige tatsächliche Breite 260px.
border-box
1.border-box {
2 width: 200px;
3 padding: 20px;
4 border: 10px solid black;
5 box-sizing: border-box;
6}Wenn border-box angegeben ist, werden width und height einschließlich padding und border berechnet. Mit anderen Worten, die angegebene width und height werden zur Gesamtsumme des Inhalts, padding und border.
In diesem Fall beträgt die angegebene width 200px, und da padding und border ebenfalls einbezogen sind, bleibt die endgültige tatsächliche Breite des Elements 200px. padding und border werden darin angepasst.
Zusammenfassung der Unterschiede von box-sizing
| Eigenschaft | Berechnungsmethode | Tatsächliche Breitenberechnung |
|---|---|---|
content-box (Standard) |
width bezieht sich nur auf den Inhalt. padding und border werden hinzugefügt. |
width + padding + border |
border-box |
width ist alles (einschließlich Inhalt, padding, border) |
Die angegebene width wird unverändert verwendet. |
Vorteile von box-sizing
-
Die Verwendung von
border-boxstabilisiert das Layout. Das Hinzufügen vonpaddingoderborderändert die angegebene Größe nicht, was Berechnungen vereinfacht. -
Es ist nützlich bei der Erstellung flexibler Layouts. In responsiven Designs oder komplexen Layouts wird
border-boxoft verwendet, um unerwartete Größenänderungen zu vermeiden.
Wie man border-box global anwendet
1*,
2*::before,
3*::after {
4 box-sizing: border-box;
5}Indem Sie CSS auf diese Weise einstellen, können Sie border-box auf alle Elemente anwenden, um unerwartete Größenänderungen zu vermeiden.
Zusammenfassung
box-sizingsteuert, obpaddingundborderin diewidthundheighteines Elements einbezogen werden.- Die Verwendung von
border-boxerleichtert Größenberechnungen und ist für responsives Design geeignet.
visibility-Eigenschaft
1.visibility-visible {
2 visibility: visible;
3}
4
5.visibility-hidden {
6 visibility: hidden;
7}
8
9.visibility-collapse {
10 visibility: collapse;
11}Die visibility-Eigenschaft wird verwendet, um Elemente anzuzeigen oder auszublenden, beeinflusst jedoch im Gegensatz zur display-Eigenschaft das Layout, auch wenn das Element verborgen ist. Es blendet das Element nur aus, behält jedoch seine ursprüngliche Position und Größe bei, ohne das Layout anderer Elemente zu beeinflussen.
Grundlegende Syntax
1element {
2 visibility: value;
3}value: Ein Wert, der die Sichtbarkeit des Elements angibt.
Werttypen
- Die
visibility-Eigenschaft kann auf die folgenden Werte eingestellt werden:.
visible
- Die Angabe von
visiblezeigt das Element an. Dies ist der Standardwert.
hidden
- Die Angabe von
hiddenblendet das Element aus, aber sein Layoutplatz wird reserviert.
collapse
collapsewird hauptsächlich für Tabellenzeilen oder -spalten verwendet. Das Element wird unsichtbar und sein Platz wird ebenfalls ignoriert. Wenn es auf Tabellenzeilen oder -spalten angewendet wird, werden die ausgeblendeten Zeilen oder Spalten vollständig aus dem Layout entfernt.- Wenn es jedoch auf reguläre Block- oder Inline-Elemente angewendet wird, außer Tabellenelementen, verhält es sich wie
hiddenund der Layoutplatz bleibt erhalten.
inherit
- Die Angabe von
inheritübernimmt den Wert dervisibility-Eigenschaft vom übergeordneten Element.
Unterschiede zwischen visibility und display
Es gibt folgende Unterschiede zwischen visibility und display.
visibility: hiddenverbirgt das Element, behält jedoch seinen Platz und das Layout bei.display: noneentfernt das Element vollständig aus dem Layout, sodass andere Elemente diesen Platz einnehmen können.
Sie können den obigen Artikel mit Visual Studio Code auf unserem YouTube-Kanal verfolgen. Bitte schauen Sie sich auch den YouTube-Kanal an.