Summary
The width CSS property specifies the width of the content area of an element. The content area is inside the padding, border, and margin of the element.
The min-width and max-width properties override width.
| Initial value | auto | 
|---|---|
| Applies to | all elements but non-replaced inline elements, table rows, and row groups | 
| Inherited | no | 
| Percentages | refer to the width of the containing block | 
| Media | visual | 
| Computed value | a percentage or autoor the absolute length | 
| Animatable | yes, as a length, percentage or calc(); when both values are lengths, they are interpolated as lengths; when both values are percentages, they are interpolated as percentages; otherwise, both values are converted into a calc()function that is the sum of a length and a percentage (each possibly zero), and thesecalc()functions have each half interpolated as real numbers. | 
| Canonical order | the length or percentage before the keyword, if both are present | 
Syntax
/* <length> values */ width: 300px; width: 25em; /* <percentage> value */ width: 75%; /* Keyword values */ width: border-box; width: content-box; width: max-content; width: min-content; width: available; width: fit-content; width: auto; /* Global values */ width: inherit; width: initial; width: unset;
Values
- <length>
- See <length>for possible units.
- <percentage>
- Specified as a <percentage>of containing block's width. If the width of the containing block depends on the width of the element, the resulting layout is undefined.
- border-box
- If present, the preceding <length>or<percentage>is applied to the element's border box.
- content-box
- If present, the preceding <length>or<percentage>is applied to the element's content box.
- auto
- The browser will calculate and select a width for the specified element.
- max-content
- The intrinsic preferred width.
- min-content
- The intrinsic minimum width.
- available
- The containing block width minus horizontal margin, border and padding.
- fit-content
- The larger of:
 - the intrinsic minimum width
- the smaller of the intrinsic preferred width and the available width
 
Formal syntax
[<length> | <percentage>] && [border-box | content-box]? | available | min-content | max-content | fit-content | auto
Examples
Default width
p.goldie {
  background: gold;
}
<p class="goldie">The Mozilla community produces a lot of great software.</p>
Pixels and 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>
Percentage
.percent {
  width: 20%;
  background-color: silver;
  border: 1px solid red;
}
<div class="percent">Width in percentage</div>
max-content
p.maxgreen {
  background: lightgreen;
  width: intrinsic;           /* Safari/WebKit uses a non-standard name */
  width: -moz-max-content;    /* Firefox/Gecko */
  width: -webkit-max-content; /* Chrome */
}
<p class="maxgreen">The Mozilla community produces a lot of great software.</p>
min-content
p.minblue {
  background: lightblue;
  width: -moz-min-content;    /* Firefox */
  width: -webkit-min-content; /* Chrome */
}
<p class="minblue">The Mozilla community produces a lot of great software.</p>
Specifications
| Specification | Status | Comment | 
|---|---|---|
| CSS Basic Box Model The definition of 'width' in that specification. | Working Draft | Added the max-content,min-content,available,fit-content,border-box,content-boxkeywords. | 
| CSS Transitions The definition of 'width' in that specification. | Working Draft | Lists widthas animatable. | 
| CSS Level 2 (Revision 1) The definition of 'width' in that specification. | Recommendation | Precises on which element it applies to. | 
| CSS Level 1 The definition of 'width' in that specification. | Recommendation | Initial definition | 
Browser compatibility
| Feature | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari (WebKit) | 
|---|---|---|---|---|---|
| Basic support | (Yes) | 1.0 (1.7 or earlier) | 4 | 3.5 | 1.0 (85) | 
| Animatability | ? | 16.0 (16.0) | ? | ? | ? | 
| max-content | 22.0 -webkit 46.0 [1] | 3.0 (1.9)-moz | ? | 15 -webkit | 2.0 (421) ( intrinsicvalue)6.1 -webkit | 
| min-content | 22.0 [4] -webkit | 3.0 (1.9) -moz | ? | 15 -webkit | 2.0 (421) ( min-intrinsicvalue)6.1 -webkit | 
| available | No support | 3.0 (1.9) -moz | ? | ? | ?[1] | 
| fill-available | 22.0 -webkit | No support | ? | ? | 6.1 -webkit | 
| fit-content | 22.0 [4] -webkit 46.0 [1] | 3.0 (1.9) -moz | ? | 15 -webkit | 6.1 -webkit[2] | 
| border-boxandcontent-box | No support | No support | No support | No support | No support | 
| Feature | Android | Android Webview | Firefox Mobile (Gecko) | IE Phone | Opera Mobile | Safari Mobile | Chrome for Android | 
|---|---|---|---|---|---|---|---|
| Basic support | ? | (Yes) | ? | ? | ? | ? | (Yes) | 
| Animatability | ? | ? | 16.0 (16.0) | ? | ? | ? | ? | 
| max-content | ? | 46.0 [1] | ? | ? | ? | ? | 46.0 [1] | 
| min-content | ? | 46.0 [1] | ? | ? | ? | ? | 46.0 [1] | 
| available | ? | ? | ? | ? | ? | ? | ? | 
| fill-available | ? | 46.0 [1] | ? | ? | ? | ? | 46.0 [1] | 
| fit-content | ? | 46.0 [1] | ? | ? | ? | ? | 46.0 [1] | 
| border-boxandcontent-box | ? | ? | ? | ? | ? | ? | ? | 
[1] WebKit implements a variation of this value under the name fill-available as of December 2013.
[2] Earlier versions of WebKit implemented an earlier version of this value under the name intrinsic, but implements fit-content since version 6.1 as well.
[3] Unprefixed.
[4] Old WebKit support intrinsic and min-intrinsic keywords, but removed in Chrome 48.
See also
Document Tags and Contributors
    
    Tags: 
    
  
                  
                    
                       Contributors to this page: 
        Sebastianz, 
    
        Simplexible, 
    
        teoli, 
    
        yisibl, 
    
        jpmedley, 
    
        fscholz, 
    
        wbamberg, 
    
        Dbs, 
    
        softwareadvisor, 
    
        yisi, 
    
        kscarfone, 
    
        Sheppy, 
    
        paul.irish, 
    
        hydrurga, 
    
        felipc, 
    
        ethertank, 
    
        tregagnon, 
    
        Huan, 
    
        TabAtkins, 
    
        Jürgen Jeka, 
    
        Mgjbot, 
    
        Potappo, 
    
        DBaron, 
    
        BijuGC, 
    
        Kyodev, 
    
        Fredchat, 
    
        Backinblakk
    
                    
                  
                  
                    
                       Last updated by:
                      Sebastianz,