width
Baseline Widely available *
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
* Some parts of this feature may have varying levels of support.
Die width
CSS Eigenschaft legt die Breite eines Elements fest. Standardmäßig wird die Breite des Inhaltsbereichs festgelegt, aber wenn box-sizing
auf border-box
gesetzt ist, wird die Breite des Randbereichs festgelegt.
Probieren Sie es aus
width: 150px;
width: 20em;
width: 75%;
width: auto;
<section class="default-example" id="default-example">
<div class="transition-all" id="example-element">
This is a box where you can change the width.
</div>
</section>
#example-element {
display: flex;
flex-direction: column;
background-color: #5b6dcd;
height: 80%;
justify-content: center;
color: #ffffff;
}
Der angegebene Wert von width
gilt für den Inhaltsbereich, solange sein Wert innerhalb der durch min-width
und max-width
definierten Werte bleibt.
- Ist der Wert für
width
kleiner als der Wert fürmin-width
, dann überschreibtmin-width
diewidth
. - Ist der Wert für
width
größer als der Wert fürmax-width
, dann überschreibtmax-width
diewidth
.
Hinweis:
Als geometrische Eigenschaft gilt width
auch für die <svg>
, <rect>
, <image>
und <foreignObject>
SVG-Elemente, wobei auto
für <svg>
zu 100%
und für andere Elemente zu 0
aufgelöst wird und Prozentwerte sich auf die SVG-Ansichtsfensterbreite von <rect>
beziehen. Der CSS width
Eigenschaftswert überschreibt jeden auf dem SVG-Element gesetzten SVG width
Attributwert.
Syntax
/* <length> values */
width: 300px;
width: 25em;
width: anchor-size(width);
width: anchor-size(--myAnchor inline, 120%);
/* <percentage> value */
width: 75%;
/* Keyword values */
width: max-content;
width: min-content;
width: fit-content;
width: fit-content(20em);
width: auto;
width: stretch;
/* Global values */
width: inherit;
width: initial;
width: revert;
width: revert-layer;
width: unset;
Werte
<length>
-
Definiert die Breite als Distanzwert.
<percentage>
-
Definiert die Breite als Prozentsatz der Breite des umgebenden Blocks.
auto
-
Der Browser berechnet und wählt eine Breite für das angegebene Element.
max-content
-
Die intrinsische bevorzugte Breite.
min-content
-
Die intrinsische Mindestbreite.
fit-content
-
Verwendet den verfügbaren Platz, aber nicht mehr als max-content, d.h.
min(max-content, max(min-content, stretch))
. fit-content(
<length-percentage>
)-
Verwendet die fit-content-Formel mit dem verfügbaren Raum, ersetzt durch das angegebene Argument, d.h.
min(max-content, max(min-content, <length-percentage>))
. stretch
-
Setzt die Breite der Randbox des Elements auf die Breite seines umgebenden Blocks. Es versucht, die Randbox den verfügbaren Raum im umgebenden Block ausfüllen zu lassen, verhält sich also in gewisser Weise ähnlich wie
100%
, wendet die resultierende Größe jedoch auf die Randbox und nicht auf die durch box-sizing bestimmte Box an.
Barrierefreiheit
Stellen Sie sicher, dass Elemente mit einer festgelegten width
nicht abgeschnitten und/oder andere Inhalte verdeckt werden, wenn die Seite herangezoomt wird, um die Textgröße zu erhöhen.
Formale Definition
Anfangswert | auto |
---|---|
Anwendbar auf | alle Elemente außer nicht ersetzte Inlineelemente, Tabellenzeilen und Zeilengruppen |
Vererbt | Nein |
Prozentwerte | bezieht sich auf die Breite des äußeren Elements |
Berechneter Wert | ein Prozentwert oder auto oder die absolute Länge |
Animationstyp | Längenangabe, Prozentsatz oder calc() ; |
Formale Syntax
width =
auto |
<length-percentage [0,∞]> |
min-content |
max-content |
fit-content( <length-percentage [0,∞]> ) |
<calc-size()> |
<anchor-size()>
<length-percentage> =
<length> |
<percentage>
<calc-size()> =
calc-size( <calc-size-basis> , <calc-sum> )
<anchor-size()> =
anchor-size( [ <anchor-name> || <anchor-size> ]? , <length-percentage>? )
<calc-size-basis> =
<intrinsic-size-keyword> |
<calc-size()> |
any |
<calc-sum>
<calc-sum> =
<calc-product> [ [ '+' | '-' ] <calc-product> ]*
<anchor-name> =
<dashed-ident>
<anchor-size> =
width |
height |
block |
inline |
self-block |
self-inline
<calc-product> =
<calc-value> [ [ '*' | / ] <calc-value> ]*
<calc-value> =
<number> |
<dimension> |
<percentage> |
<calc-keyword> |
( <calc-sum> )
<calc-keyword> =
e |
pi |
infinity |
-infinity |
NaN
Beispiele
Standardbreite
p.gold {
background: gold;
}
<p class="gold">The MDN community writes really great documentation.</p>
Beispiel mit Pixeln und ems
.px_length {
width: 200px;
background-color: red;
color: white;
border: 1px solid black;
}
.em_length {
width: 20em;
background-color: white;
color: red;
border: 1px solid black;
}
<div class="px_length">Width measured in px</div>
<div class="em_length">Width measured in em</div>
Beispiel mit Prozentsatz
.percent {
width: 20%;
background-color: silver;
border: 1px solid red;
}
<div class="percent">Width in percentage</div>
Beispiel mit "max-content"
p.max-green {
background: lightgreen;
width: max-content;
}
<p class="max-green">The MDN community writes really great documentation.</p>
Beispiel mit "min-content"
p.min-blue {
background: lightblue;
width: min-content;
}
<p class="min-blue">The MDN community writes really great documentation.</p>
Dehnen der Breite um den umgebenden Block auszufüllen
HTML
<div class="parent">
<div class="child">text</div>
</div>
<div class="parent">
<div class="child stretch">stretch</div>
</div>
CSS
.parent {
border: solid;
margin: 1rem;
display: flex;
}
.child {
background: #0999;
margin: 1rem;
}
.stretch {
width: stretch;
}
Ergebnis
Spezifikationen
Specification |
---|
CSS Box Sizing Module Level 4 # width-height-keywords |
CSS Box Sizing Module Level 4 # sizing-values |