The max-width
CSS property is used to set the maximum width of an element. It prevents the used value of the width
property from becoming larger than the value specified by max-width
.
/* <length> value */ max-width: 3.5em; /* <percentage> value */ max-width: 75%; /* Keyword values */ max-width: none; max-width: max-content; max-width: min-content; max-width: fit-content; max-width: fill-available; /* Global values */ max-width: inherit; max-width: initial; max-width: unset;
max-width
overrides width
, but min-width
overrides max-width
.
Initial value | none |
---|---|
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 | the percentage as specified or the absolute length or none |
Animation type | a length, percentage or calc(); |
Canonical order | the unique non-ambiguous order defined by the formal grammar |
Syntax
Values
<length>
- The maximum width, expressed as a
<length>
. <percentage>
- The maximum width, expressed as a
<percentage>
of the containing block's width. none
- The width has no maximum value.
max-content
- The intrinsic preferred width.
min-content
- The intrinsic minimum width.
fill-available
- The containing block's width minus horizontal margin, border, and padding. Some browsers implement an ancient name for this keyword,
available
. fit-content
- The same as
max-content.
Formal syntax
<length> | <percentage> | none | max-content | min-content | fit-content | fill-available
Examples
In this example, the "child" will be either 150 pixels wide or the width of the "parent," whichever is smaller:
<div id="parent"> <div id="child"> Fusce pulvinar vestibulum eros, sed luctus ex lobortis quis. </div> </div>
#parent { background: lightblue; width: 300px; } #child { background: gold; width: 100%; max-width: 150px; }
The fit-content
value can be used to set the width of an element based on the intrinsic size required by its content:
#parent { background: lightblue; width: 300px; } #child { background: gold; width: 100%; max-width: -moz-fit-content; max-width: -webkit-fit-content; }
Specifications
Specification | Status | Comment |
---|---|---|
CSS Intrinsic & Extrinsic Sizing Module Level 3 The definition of 'max-width' in that specification. |
Working Draft | Adds the max-content , min-content , fit-content , and fill-available keywords.Both CSS3 Box and CSS3 Writing Modes drafts defined at some point these keywords. These drafts are superseded by this spec. |
CSS Transitions The definition of 'max-width' in that specification. |
Working Draft | Defines max-width as animatable. |
CSS Level 2 (Revision 1) The definition of 'max-width' in that specification. |
Recommendation | Initial definition |
Browser compatibility
Feature | Chrome | Edge | Firefox (Gecko) | Internet Explorer | Opera | Safari (WebKit) |
---|---|---|---|---|---|---|
Basic support | 1.0 | (Yes) | 1.0 (1.7 or earlier) | 7.0 | 4.0 | 2.0.2 (416), buggy before |
applies to <table> [1] |
No support | No support | (Yes) | No support | (Yes) | No support |
max-content , min-content , fit-content , and fill- available |
No support [3] | No support | 3.0 (1.9)-moz [2] | No support | No support | No support [3] |
Feature | Android | Edge | Firefox Mobile (Gecko) | IE Phone | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
Basic support | ? | (Yes) | ? | ? | ? | ? |
[1] CSS 2.1 explicitly leaves the behavior of max-width
with <table>
undefined. Therefore any behavior is CSS2.1-compliant; newer CSS specifications may define this behavior, so Web developers shouldn't rely on a specific one now.
[2] Gecko experimentally implements the definitions given in CSS3 Basic Box. This one defines available
and not fill-available
. Also the definition of fit-content
is simpler than in CSS3 Sizing.
[3] WebKit implements an earlier proposal for setting the height to an intrinsic height: the keywords intrinsic
, instead of max-content
, and min-intrinsic
, instead of min-content
There is no equivalent for fill-available
or fit-content
.