Breite und Höhe: Bestimmen Sie die Größe des Elements. CSS-Breite und -Höhenparameter für die Größe von HTML-Seitenelementen Überschreiben der Blockbreite
Beschreibung
Legt die Höhe des Blocks oder austauschbarer Elemente fest (z. B. des Tags) ). Die Höhe beinhaltet nicht die Dicke der Ränder um das Element, den Wert der Polsterung und die Ränder.
Wenn der Inhalt des Blocks die angegebene Höhe überschreitet, bleibt die Höhe des Elements unverändert und der Inhalt wird darüber angezeigt. Diese Funktion kann dazu führen, dass sich der Inhalt von Elementen überlappt, wenn die Elemente im HTML-Code sequentiell sind. Um dies zu verhindern, fügen Sie dem Stil des Elements overflow: auto hinzu.
Syntax
höhe: Wert | Interesse | auto | erben
Die Werte
Alle in CSS akzeptierten Längeneinheiten werden als Werte akzeptiert, z. B. Pixel (px), Zoll (in), Punkte (pt) usw. Bei Verwendung der Prozentschreibweise wird die Höhe eines Elements in Abhängigkeit von der Höhe des übergeordneten Elements berechnet. Wenn das übergeordnete Element nicht explizit angegeben wird, wird das Browserfenster als übergeordnetes Element verwendet. Auto legt die Höhe basierend auf dem Inhalt des Elements fest
HTML5 CSS2.1 IE Cr Op Sa Fx
Das Ergebnis dieses Beispiels ist in Abb. 1 dargestellt. 1.
Zahl: 1. Anwenden der Eigenschaft height
Objektmodell
document.getElementById ("elementID") .style.height
Browser
Internet Explorer 6 definiert Höhe nicht korrekt als Mindesthöhe.
Im Quirk-Modus berechnet Internet Explorer bis einschließlich Version 8.0 die Elementhöhe falsch, ohne dass Auffüll-, Rand- und Rahmenwerte hinzugefügt werden.
Internet Explorer 7.0 oder höher unterstützt den geerbten Wert nicht.
Das Höhe Die CSS-Eigenschaft gibt die Höhe eines Elements an. Standardmäßig definiert die Eigenschaft die Höhe des Inhaltsbereichs. Wenn die Boxgröße jedoch auf Border-Box eingestellt ist, wird stattdessen die Höhe des Randbereichs bestimmt.
Die Quelle für dieses interaktive Beispiel wird in einem GitHub-Repository gespeichert. Wenn Sie einen Beitrag zum interaktiven Beispielprojekt leisten möchten, klonen Sie bitte https://github.com/mdn/interactive-examples und senden Sie uns eine Pull-Anfrage.
Die Eigenschaften für minimale und maximale Höhe überschreiben die Höhe.
Syntax
/ * Schlüsselwortwert * / height: auto; / *Werte
Der CSS-Datentyp repräsentiert einen Abstandswert. Längen können in zahlreichen CSS-Eigenschaften verwendet werden, z. B. Breite, Höhe, Rand, Abstand, Randbreite, Schriftgröße und Textschatten. "\u003eFormale Syntax
Beispiel
Html
CSS
div (Breite: 250px; Rand-Boden: 5px; Rand: 2px durchgehend blau;) #taller (Höhe: 50px;) #kürzer (Höhe: 25px;) #parent (Höhe: 100px;) #child (Höhe: 50% ; Breite: 75%;)Ergebnis
Zugänglichkeitsbedenken
Stellen Sie sicher, dass mit einer Höhe festgelegte Elemente nicht abgeschnitten werden und / oder andere Inhalte nicht verdecken, wenn die Seite gezoomt wird, um die Textgröße zu erhöhen.
Spezifikationen
Spezifikation | Status | Kommentar |
---|---|---|
CSS Intrinsic & Extrinsic Sizing Module Level 4 |
Entwurf des Herausgebers | |
CSS Intrinsic & Extrinsic Sizing Module Level 3 Die Definition von "Höhe" in dieser Spezifikation. |
Arbeitsentwurf | Die Schlüsselwörter max-content, min-content und fit-content wurden hinzugefügt. |
CSS-Übergänge Die Definition von "Höhe" in dieser Spezifikation. |
Arbeitsentwurf | Listet die Höhe als animierbar auf. |
CSS Level 2 (Revision 1) Die Definition von "Höhe" in dieser Spezifikation. |
Empfehlung | Fügt Unterstützung für den CSS-Datentyp hinzu, der einen Entfernungswert darstellt. Längen können in zahlreichen CSS-Eigenschaften verwendet werden, z. B. Breite, Höhe, Rand, Abstand, Randbreite, Schriftgröße und Textschatten. "\u003e |
CSS Level 1 Die Definition von "Höhe" in dieser Spezifikation. |
Empfehlung | Erstdefinition. |
Ursprünglicher Wert | Auto |
---|---|
Gilt für | alle Elemente außer nicht ersetzten Inline-Elementen, Tabellenspalten und Spaltengruppen |
Vererbt | nein |
Prozentsätze | Der Prozentsatz wird in Bezug auf die Höhe des enthaltenden Blocks der generierten Box berechnet. Wenn die Höhe des enthaltenden Blocks nicht explizit angegeben wird (dh von der Höhe des Inhalts abhängt) und dieses Element nicht absolut positioniert ist, wird der Wert berechnet Eine prozentuale Höhe des Stammelements ist relativ zum anfänglichen enthaltenden Block. |
Medien | visuell |
Berechneter Wert | ein Prozentsatz oder Auto oder die absolute Länge |
Animationstyp | ein CSS-Datentyp wird als reelle Gleitkommazahl interpoliert. "\u003e Länge, CSS-Datentyp wird als reelle Gleitkommazahl interpoliert."\u003e Prozentsatz oder calc (); |
Kanonische Ordnung | die eindeutige, nicht mehrdeutige Reihenfolge, die durch die formale Grammatik definiert wird |
Browser-Kompatibilität
Die Kompatibilitätstabelle auf dieser Seite wird aus strukturierten Daten generiert. Wenn Sie zu den Daten beitragen möchten, besuchen Sie bitte https://github.com/mdn/browser-compat-data und senden Sie uns eine Pull-Anfrage.
Aktualisieren Sie die Kompatibilitätsdaten auf GitHub
Desktop | Handy, Mobiltelefon | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
Chrom | Kante | Feuerfuchs | Internet Explorer | Oper | Safari | Android Webview | Chrome für Android | Firefox für Android | Opera für Android | Safari unter iOS | Samsung Internet | |
Höhe | Chrome Volle Unterstützung 1 | Edge Volle Unterstützung 12 | Firefox Volle Unterstützung 1 | IE Volle Unterstützung 4 | Opera Volle Unterstützung 7 | Safari Volle Unterstützung 1 | WebView Android Volle Unterstützung 1 | Chrome Android Volle Unterstützung 18 | Firefox Android Volle Unterstützung 4 | Opera Android Volle Unterstützung 10.1 | Safari iOS Volle Unterstützung 1 | Samsung Internet Android Volle Unterstützung 1.0 |
fit-content | Chrome Volle Unterstützung 46 | Kante Keine Unterstützung Nr | Firefox Keine Unterstützung Nein | IE Keine Unterstützung Nr | Opera Volle Unterstützung 33 | Safari Volle Unterstützung 11 Volle Unterstützung 11 Volle Unterstützung 9 Präfix Präfix | Opera Android? | Safari iOS Volle Unterstützung 11 Volle Unterstützung 11 Volle Unterstützung 9 Präfix Präfix Implementiert mit dem Herstellerpräfix: -webkit- | ||||
max-content | Chrome Volle Unterstützung 46 | Kante Keine Unterstützung Nr | Präfix Präfix | IE Keine Unterstützung Nr | Opera Volle Unterstützung 44 | Safari Volle Unterstützung 11 | WebView Android Volle Unterstützung 46 | Chrome Android Volle Unterstützung 46 | Präfix Präfix Implementiert mit dem Herstellerpräfix: -moz- | Samsung Internet Android Volle Unterstützung 5.0 | ||
Min-Inhalt | Chrome Volle Unterstützung 46 | Kante Keine Unterstützung Nr | Firefox Volle Unterstützung 66 Volle Unterstützung 66 Volle Unterstützung 3 Präfix Präfix Implementiert mit dem Herstellerpräfix: -moz- | IE Keine Unterstützung Nr | Opera Volle Unterstützung 44 | Safari Volle Unterstützung 11 | WebView Android Volle Unterstützung 46 | Chrome Android Volle Unterstützung 46 | Firefox Android Volle Unterstützung 66 Volle Unterstützung 66 Volle Unterstützung 4 Präfix Präfix Implementiert mit dem Herstellerpräfix: -moz- | Opera Android Volle Unterstützung 43 | Safari iOS Volle Unterstützung 11 | Samsung Internet Android Volle Unterstützung 5.0 |
strecken | Chrome Volle Unterstützung 28 Webkit-Fill-verfügbar"\u003e Alternativer Name Volle Unterstützung 28Webkit-Fill-verfügbar"\u003e Alternativer Name Webkit-Fill-verfügbar"\u003e Alternativer Name | Kante Keine Unterstützung Nr | Firefox Keine Unterstützung Nein | IE Keine Unterstützung Nr | Opera Volle Unterstützung 15 Webkit-Fill-verfügbar"\u003e Alternativer Name Volle Unterstützung 15Webkit-Fill-verfügbar"\u003e Alternativer Name Webkit-Fill-verfügbar"\u003e Alternativer Name Verwendet den nicht standardmäßigen Namen: -webkit-fill-available | Safari Volle Unterstützung 9 Webkit-Fill-verfügbar"\u003e Alternativer Name Volle Unterstützung 9Webkit-Fill-verfügbar"\u003e Alternativer Name Webkit-Fill-verfügbar"\u003e Alternativer Name Verwendet den nicht standardmäßigen Namen: -webkit-fill-available | WebView Android Volle Unterstützung 4.4 Webkit-Fill-verfügbar"\u003e Alternativer Name Volle Unterstützung 4.4Webkit-Fill-verfügbar"\u003e Alternativer Name Webkit-Fill-verfügbar"\u003e Alternativer Name Verwendet den nicht standardmäßigen Namen: -webkit-fill-available | Chrome Android Volle Unterstützung 28 Webkit-Fill-verfügbar"\u003e Alternativer Name Volle Unterstützung 28Webkit-Fill-verfügbar"\u003e Alternativer Name Webkit-Fill-verfügbar"\u003e Alternativer Name Verwendet den nicht standardmäßigen Namen: -webkit-fill-available | Firefox Android Keine Unterstützung Nein | Opera Android? | Safari iOS Volle Unterstützung 9 Webkit-Fill-verfügbar"\u003e Alternativer Name Volle Unterstützung 9Webkit-Fill-verfügbar"\u003e Alternativer Name Webkit-Fill-verfügbar"\u003e Alternativer Name Verwendet den nicht standardmäßigen Namen: -webkit-fill-available | Samsung Internet Android Volle Unterstützung 5.0 Webkit-Fill-verfügbar"\u003e Alternativer Name Volle Unterstützung 5.0Webkit-Fill-verfügbar"\u003e Alternativer Name Webkit-Fill-verfügbar"\u003e Alternativer Name Verwendet den nicht standardmäßigen Namen: -webkit-fill-available |
Legende
Volle Unterstützung Volle Unterstützung Keine Unterstützung Keine Unterstützung Kompatibilität unbekannt Kompatibilität unbekannt Verwendet einen nicht standardmäßigen Namen. Verwendet einen nicht standardmäßigen Namen. Erfordert ein Herstellerpräfix oder einen anderen Namen zur Verwendung. Erfordert ein Herstellerpräfix oder einen anderen Namen zur Verwendung.Standardmäßig wird die automatische Breite für Blockelemente verwendet. Dies bedeutet, dass das Element horizontal genauso stark gedehnt wird, wie freier Speicherplatz vorhanden ist. Die Standardhöhe von Blockelementen wird automatisch eingestellt, d.h. Der Browser streckt den Inhaltsbereich vertikal, um den gesamten Inhalt anzuzeigen. Um benutzerdefinierte Abmessungen für den Inhaltsbereich eines Elements festzulegen, können Sie die Eigenschaften width und height verwenden.
Mit der Eigenschaft width CSS können Sie die Breite des Inhaltsbereichs des Elements und die Eigenschaft height die Höhe des Inhaltsbereichs festlegen:
Beachten Sie, dass die Eigenschaften width und height nur die Größe des Inhaltsbereichs bestimmen. Um die Gesamtbreite eines Blockelements zu berechnen, fügen Sie die Breite des Inhaltsbereichs, den linken und rechten Abstand sowie die Breite des linken und rechten Randes hinzu. Gleiches gilt für die Gesamthöhe des Elements, nur alle Werte werden vertikal berechnet:
In diesem Absatz werden nur die Breite und Höhe festgelegt.
Dieser Absatz enthält neben Breite und Höhe auch Polsterung, Rand und Polsterung.
Versuchen "Das Beispiel zeigt deutlich, dass das zweite Element mehr Platz beansprucht als das erste. Wenn wir nach unserer Formel berechnen, betragen die Abmessungen des ersten Absatzes 150 x 100 Pixel und die Abmessungen des zweiten Absatzes:
Gesamthöhe: | 5px | + | 10px | + | 100px | + | 10px | + | 5px | \u003d 130px |
oberer, höher rahmen | oberer, höher einzug | höhe | niedriger einzug | unterseite rahmen |
das heißt 180x130 Pixel.
Überlauf von Elementen
Nachdem Sie die Breite und Höhe des Elements definiert haben, sollten Sie einen wichtigen Punkt beachten: Der Inhalt im Element kann die angegebene Blockgröße überschreiten. In diesem Fall geht ein Teil des Inhalts über die Grenzen des Elements hinaus. Um diesen unangenehmen Moment zu vermeiden, können Sie die CSS-Überlaufeigenschaft verwenden. Die Überlaufeigenschaft teilt dem Browser mit, was zu tun ist, wenn der Inhalt des Blocks seine Größe überschreitet. Diese Eigenschaft kann einen von vier Werten annehmen:
- sichtbar ist der vom Browser verwendete Standardwert. Das Festlegen dieses Werts hat den gleichen Effekt wie das Nichteinstellen der Überlaufeigenschaft.
- scroll - Fügt dem Element vertikale und horizontale Bildlaufleisten hinzu.
- auto - Fügt nach Bedarf Bildlaufleisten hinzu.
- versteckt - verbirgt einen Teil des Inhalts, der über die Grenzen des Blockelements hinausgeht.
Die Eigenschaften der CSS-Breite sind für den Wert der Breite des Inhaltsbereichs des Elements verantwortlich.
Breite: Wert | Interesse | auto | erben
Die Eigenschaft css height ist für den Wert der Höhe des Inhaltsbereichs des Elements verantwortlich.
Höhe: Wert | Interesse | auto | erben
Negative Werte für Höhe und Breite sind nicht zulässig.
Es scheint, dass mit diesen CSS-Eigenschaften alles einfach und klar ist, aber tatsächlich stellt sich heraus, dass alles nicht ganz so einfach ist.
Das Festlegen einer Breite für ein Element auf einer Webseite mithilfe der width-Eigenschaft von 500px bedeutet nicht, dass die Gesamtbreite dieses Elements 500 Pixel oder mehr beträgt.
Das Wichtigste, was Sie verstehen müssen, ist, dass die Eigenschaften für Breite und Höhe die Breite und Höhe für den Inhaltsbereich festlegen.
Die Eigenschaften für Breite und Höhe sind nur eine der Komponenten, aus denen die Gesamtbreite und -höhe des Elements berechnet wird. Sie geben die Breite und Höhe des Inhaltsbereichs an, die im folgenden Bild zu sehen sind. Auch Eigenschaften wie Polsterung, Rand und Rand sind an der Bildung der Gesamtbreite und -höhe beteiligt.
Dies kann jetzt leicht gesehen werden.
Nehmen wir zum Beispiel zwei Blöcke mit derselben Breite, aber einer von ihnen legt zusätzlich die Auffüllungseigenschaft fest.
Standardmäßig haben Webseiten das Verhalten, dass der Auffüllwert für die entsprechende Seite zu den Höhen- und Breitenwerten hinzugefügt wird.
Jene. Die Gesamtbreite des Elements besteht aus dem Wert der width-Eigenschaft des Elements, und die Werte für padding-left und padding-right werden hinzugefügt.
Für verschiedene Arten von Elementen, die auf der Seite zu finden sind, wird die Gesamtbreite und -höhe der Elemente mithilfe spezieller Formeln berechnet.
Für verschiedene Arten von Elementen, die auf Webseiten zu finden sind, können die Werte für Breite und Höhe unterschiedliche Verhaltensweisen und Werte haben.
Eine ähnliche Situation wird mit der Eigenschaft height sein.
CSS verfügt über einen speziellen Algorithmus, der die Werte für Breite und Höhe für verschiedene Elemente auf einer Webseite berechnet. Ich werde jetzt nicht auf diesen Algorithmus eingehen, weil es ist etwas kompliziert.
Das Wichtigste, was wir jetzt verstehen müssen, ist, dass wir mit den Eigenschaften für Breite und Höhe mit der Breite und Höhe des Bereichs mit dem Inhalt des Elements arbeiten können und nicht mit der Gesamtbreite und -höhe des Elements.