max-width

The max-width CSS property sets 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.

max-width overrides width, but min-width overrides max-width.

Syntax

/* <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(20em);

/* Global values */
max-width: inherit;
max-width: initial;
max-width: unset;

Values

<length>
Defines the max-width as an absolute value.
<percentage>
Defines the max-width as a percentage of the containing block's width.
auto
The browser will calculate and select a max-width for the specified element.
none
No limit on the size of the box.
max-content
The intrinsic preferred max-width.
min-content
The intrinsic minimum max-width.
fit-content(<length-percentage>)
Uses the fit-content formula with the available space replaced by the specified argument, i.e. min(max-content, max(min-content, argument)).

Accessibility concerns

Ensure that elements set with a max-width are not truncated and/or do not obscure other content when the page is zoomed to increase text size.

Formal definition

Initial valuenone
Applies toall elements but non-replaced inline elements, table rows, and row groups
Inheritedno
Percentagesrefer to the width of the containing block
Computed valuethe percentage as specified or the absolute length or none
Animation typea length, percentage or calc();

Formal syntax

auto | <length> | <percentage> | min-content | max-content | fit-content(<length-percentage>)

where
<length-percentage> = <length> | <percentage>

Examples

Setting max width in pixels

In this example, the "child" will be either 150 pixels wide or the width of the "parent," whichever is smaller.

HTML

<div id="parent">
  <div id="child">
    Fusce pulvinar vestibulum eros, sed luctus ex lobortis quis.
  </div>
</div>

CSS

#parent {
  background: lightblue;
  width: 300px;
}

#child {
  background: gold;
  width: 100%;
  max-width: 150px;
}

Result

Specifications

Specification Status Comment
CSS Box Sizing Module Level 4
The definition of 'max-width' in that specification.
Editor's Draft
CSS Box Sizing Module Level 3
The definition of 'max-width' in that specification.
Working Draft Adds the max-content, min-content, fit-content keywords.
CSS Level 2 (Revision 1)
The definition of 'max-width' in that specification.
Recommendation Initial definition.

Browser compatibility

DesktopMobile
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidFirefox for AndroidOpera for AndroidSafari on iOSSamsung Internet
max-widthChrome Full support 1Edge Full support 12Firefox Full support 1
Notes
Full support 1
Notes
Notes CSS 2.1 leaves the behavior of max-width with table undefined. Firefox supports applying max-width to table elements.
IE Full support 7Opera Full support 4
Notes
Full support 4
Notes
Notes CSS 2.1 leaves the behavior of max-width with table undefined. Opera supports applying max-width to table elements.
Safari Full support 1WebView Android Full support 4.4Chrome Android Full support 18Firefox Android Full support 4
Notes
Full support 4
Notes
Notes CSS 2.1 leaves the behavior of max-width with table undefined. Firefox supports applying max-width to table elements.
Opera Android Full support 14Safari iOS Full support 1Samsung Internet Android Full support 1.0
fit-content
Experimental
Chrome Full support 46
Full support 46
Full support 25
Prefixed
Prefixed Implemented with the vendor prefix: -webkit-
Edge Full support 79
Full support 79
Full support 79
Prefixed
Prefixed Implemented with the vendor prefix: -webkit-
Firefox Partial support 3
Prefixed Notes
Partial support 3
Prefixed Notes
Prefixed Implemented with the vendor prefix: -moz-
Notes Firefox implements the definitions given in CSS3 Basic Box. This defines available and not fit-available. Also, the definition of fit-content is simpler than in CSS3 Sizing.
IE No support NoOpera Full support 44Safari Full support 6.1
Prefixed
Full support 6.1
Prefixed
Prefixed Implemented with the vendor prefix: -webkit-
Full support 2
Alternate Name
Alternate Name Uses the non-standard name: intrinsic
WebView Android Full support 46
Full support 46
Full support ≤37
Prefixed
Prefixed Implemented with the vendor prefix: -webkit-
Chrome Android Full support 46Firefox Android Partial support 4
Prefixed Notes
Partial support 4
Prefixed Notes
Prefixed Implemented with the vendor prefix: -moz-
Notes Firefox implements the definitions given in CSS3 Basic Box. This defines available and not fit-available. Also, the definition of fit-content is simpler than in CSS3 Sizing.
Opera Android Full support 43Safari iOS Full support 7
Prefixed
Full support 7
Prefixed
Prefixed Implemented with the vendor prefix: -webkit-
Full support 1
Alternate Name
Alternate Name Uses the non-standard name: intrinsic
Samsung Internet Android Full support 5.0
max-content
Experimental
Chrome Full support 46
Full support 46
Full support 22
Prefixed
Prefixed Implemented with the vendor prefix: -webkit-
Edge Full support 79
Full support 79
Full support 79
Prefixed
Prefixed Implemented with the vendor prefix: -webkit-
Firefox Full support 66
Full support 66
Full support 3
Prefixed
Prefixed Implemented with the vendor prefix: -moz-
IE No support NoOpera Full support 44Safari Full support 6.1
Prefixed
Full support 6.1
Prefixed
Prefixed Implemented with the vendor prefix: -webkit-
Full support 2
Alternate Name
Alternate Name Uses the non-standard name: intrinsic
WebView Android Full support 46
Full support 46
Full support ≤37
Prefixed
Prefixed Implemented with the vendor prefix: -webkit-
Chrome Android Full support 46Firefox Android Full support 66
Full support 66
Full support 4
Prefixed
Prefixed Implemented with the vendor prefix: -moz-
Opera Android Full support 43Safari iOS Full support 7
Prefixed
Full support 7
Prefixed
Prefixed Implemented with the vendor prefix: -webkit-
Full support 1
Alternate Name
Alternate Name Uses the non-standard name: intrinsic
Samsung Internet Android Full support 5.0
min-content
Experimental
Chrome Full support 46
Full support 46
Full support 25
Prefixed
Prefixed Implemented with the vendor prefix: -webkit-
Edge Full support 79
Full support 79
Full support 79
Prefixed
Prefixed Implemented with the vendor prefix: -webkit-
Firefox Full support 66
Full support 66
Full support 3
Prefixed
Prefixed Implemented with the vendor prefix: -moz-
IE No support NoOpera Full support 44Safari Full support 6.1
Prefixed
Full support 6.1
Prefixed
Prefixed Implemented with the vendor prefix: -webkit-
Full support 2
Alternate Name
Alternate Name Uses the non-standard name: intrinsic
WebView Android Full support 46Chrome Android Full support 46Firefox Android Full support 66
Full support 66
Full support 4
Prefixed
Prefixed Implemented with the vendor prefix: -moz-
Opera Android Full support 43Safari iOS Full support 7
Prefixed
Full support 7
Prefixed
Prefixed Implemented with the vendor prefix: -webkit-
Full support 1
Alternate Name
Alternate Name Uses the non-standard name: intrinsic
Samsung Internet Android Full support 5.0
stretch
Experimental
Chrome Full support 22
Alternate Name
Full support 22
Alternate Name
Alternate Name Uses the non-standard name: -webkit-fill-available
Edge Full support 79
Alternate Name
Full support 79
Alternate Name
Alternate Name Uses the non-standard name: -webkit-fill-available
Firefox No support NoIE No support NoOpera Full support 15
Alternate Name
Full support 15
Alternate Name
Alternate Name Uses the non-standard name: -webkit-fill-available
Safari No support NoWebView Android Full support 4.4
Alternate Name
Full support 4.4
Alternate Name
Alternate Name Uses the non-standard name: -webkit-fill-available
Chrome Android Full support 25
Alternate Name
Full support 25
Alternate Name
Alternate Name Uses the non-standard name: -webkit-fill-available
Firefox Android No support NoOpera Android Full support 14
Alternate Name
Full support 14
Alternate Name
Alternate Name Uses the non-standard name: -webkit-fill-available
Safari iOS No support NoSamsung Internet Android Full support 1.5
Alternate Name
Full support 1.5
Alternate Name
Alternate Name Uses the non-standard name: -webkit-fill-available

Legend

Full support
Full support
Partial support
Partial support
No support
No support
Experimental. Expect behavior to change in the future.
Experimental. Expect behavior to change in the future.
See implementation notes.
See implementation notes.
Uses a non-standard name.
Uses a non-standard name.
Requires a vendor prefix or different name for use.
Requires a vendor prefix or different name for use.

See also