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.

/* <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.

Valor inicialnone
Applies toall elements but non-replaced inline elements, table rows, and row groups
Heredableno
Percentagesrefer to the width of the containing block
Mediavisual
Valor calculadothe percentage as specified or the absolute length or none
Animation typea length, percentage or calc();
Canonical orderel orden único no-ambigüo definido por la gramática formal

Syntax

Values

<length>
The maximum width, expressed as a <length>.
<percentage>
The maximum width, expressed as a <percentage> of the containing block's width.

Keyword values

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 the horizontal margin, border, and padding. (Note that 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
La definición de 'max-width' en esta especificación.
Working Draft Adds the max-content, min-content, fit-content, and fill-available keywords. (Both CSS3 Box and CSS3 Writing Modes drafts used to define these keywords, but are superseded by this spec.)
CSS Transitions
La definición de 'max-width' en esta especificación.
Working Draft Defines max-width as animatable.
CSS Level 2 (Revision 1)
La definición de 'max-width' en esta especificación.
Recommendation Initial definition.

Browser compatibility

Update compatibility data on GitHub
DesktopMobile
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome para AndroidFirefox para AndroidOpera para AndroidSafari en iOSSamsung Internet
max-widthChrome Soporte completo 1Edge Soporte completo 12Firefox Soporte completo 1
Notas
Soporte completo 1
Notas
Notas CSS 2.1 leaves the behavior of max-width with table undefined. Firefox supports applying max-width to table elements.
IE Soporte completo 7Opera Soporte completo 4
Notas
Soporte completo 4
Notas
Notas CSS 2.1 leaves the behavior of max-width with table undefined. Opera supports applying max-width to table elements.
Safari Soporte completo 1WebView Android Soporte completo 4.4Chrome Android Soporte completo 18Firefox Android Soporte completo 4
Notas
Soporte completo 4
Notas
Notas CSS 2.1 leaves the behavior of max-width with table undefined. Firefox supports applying max-width to table elements.
Opera Android Soporte completo SiSafari iOS Soporte completo 1Samsung Internet Android Soporte completo 1.0
fit-content
Experimental
Chrome Soporte completo 46
Soporte completo 46
Soporte completo 25
Prefijado
Prefijado Requiere de un prefijo de vendedor : -webkit-
Edge Sin soporte NoFirefox Soporte parcial 3
Prefijado Notas
Soporte parcial 3
Prefijado Notas
Prefijado Requiere de un prefijo de vendedor : -moz-
Notas 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 Sin soporte NoOpera Soporte completo 44Safari Soporte completo 6.1
Prefijado
Soporte completo 6.1
Prefijado
Prefijado Requiere de un prefijo de vendedor : -webkit-
Soporte completo 2
Nombre alternativo
Nombre alternativo Usa un nombre no estandar : intrinsic
WebView Android Soporte completo 46
Soporte completo 46
Soporte completo ≤37
Prefijado
Prefijado Requiere de un prefijo de vendedor : -webkit-
Chrome Android Soporte completo 46Firefox Android Soporte parcial 4
Prefijado Notas
Soporte parcial 4
Prefijado Notas
Prefijado Requiere de un prefijo de vendedor : -moz-
Notas 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 Soporte completo 43Safari iOS Soporte completo 7
Prefijado
Soporte completo 7
Prefijado
Prefijado Requiere de un prefijo de vendedor : -webkit-
Soporte completo 1
Nombre alternativo
Nombre alternativo Usa un nombre no estandar : intrinsic
Samsung Internet Android Soporte completo 5.0
max-content
Experimental
Chrome Soporte completo 46
Soporte completo 46
Soporte completo 22
Prefijado
Prefijado Requiere de un prefijo de vendedor : -webkit-
Edge Sin soporte NoFirefox Soporte completo 66
Soporte completo 66
Soporte completo 3
Prefijado
Prefijado Requiere de un prefijo de vendedor : -moz-
IE Sin soporte NoOpera Soporte completo 44Safari Soporte completo 6.1
Prefijado
Soporte completo 6.1
Prefijado
Prefijado Requiere de un prefijo de vendedor : -webkit-
Soporte completo 2
Nombre alternativo
Nombre alternativo Usa un nombre no estandar : intrinsic
WebView Android Soporte completo 46
Soporte completo 46
Soporte completo ≤37
Prefijado
Prefijado Requiere de un prefijo de vendedor : -webkit-
Chrome Android Soporte completo 46Firefox Android Soporte completo 66
Soporte completo 66
Soporte completo 4
Prefijado
Prefijado Requiere de un prefijo de vendedor : -moz-
Opera Android Soporte completo 43Safari iOS Soporte completo 7
Prefijado
Soporte completo 7
Prefijado
Prefijado Requiere de un prefijo de vendedor : -webkit-
Soporte completo 1
Nombre alternativo
Nombre alternativo Usa un nombre no estandar : intrinsic
Samsung Internet Android Soporte completo 5.0
min-content
Experimental
Chrome Soporte completo 46
Soporte completo 46
Soporte completo 25
Prefijado
Prefijado Requiere de un prefijo de vendedor : -webkit-
Edge Sin soporte NoFirefox Soporte completo 66
Soporte completo 66
Soporte completo 3
Prefijado
Prefijado Requiere de un prefijo de vendedor : -moz-
IE Sin soporte NoOpera Soporte completo 44Safari Soporte completo 6.1
Prefijado
Soporte completo 6.1
Prefijado
Prefijado Requiere de un prefijo de vendedor : -webkit-
Soporte completo 2
Nombre alternativo
Nombre alternativo Usa un nombre no estandar : intrinsic
WebView Android Soporte completo 46Chrome Android Soporte completo 46Firefox Android Soporte completo 66
Soporte completo 66
Soporte completo 4
Prefijado
Prefijado Requiere de un prefijo de vendedor : -moz-
Opera Android Soporte completo 43Safari iOS Soporte completo 7
Prefijado
Soporte completo 7
Prefijado
Prefijado Requiere de un prefijo de vendedor : -webkit-
Soporte completo 1
Nombre alternativo
Nombre alternativo Usa un nombre no estandar : intrinsic
Samsung Internet Android Soporte completo 5.0
stretch
Experimental
Chrome Soporte completo 22
Nombre alternativo
Soporte completo 22
Nombre alternativo
Nombre alternativo Usa un nombre no estandar : -webkit-fill-available
Edge Sin soporte NoFirefox Sin soporte NoIE Sin soporte NoOpera Soporte completo 15
Nombre alternativo
Soporte completo 15
Nombre alternativo
Nombre alternativo Usa un nombre no estandar : -webkit-fill-available
Safari Sin soporte NoWebView Android Soporte completo 4.4
Nombre alternativo
Soporte completo 4.4
Nombre alternativo
Nombre alternativo Usa un nombre no estandar : -webkit-fill-available
Chrome Android Soporte completo 25
Nombre alternativo
Soporte completo 25
Nombre alternativo
Nombre alternativo Usa un nombre no estandar : -webkit-fill-available
Firefox Android Sin soporte NoOpera Android Soporte completo 14
Nombre alternativo
Soporte completo 14
Nombre alternativo
Nombre alternativo Usa un nombre no estandar : -webkit-fill-available
Safari iOS Sin soporte NoSamsung Internet Android Sin soporte No

Leyenda

Soporte completo  
Soporte completo
Soporte parcial  
Soporte parcial
Sin soporte  
Sin soporte
Experimental. Esperar que el comportamiento cambie en el futuro.
Experimental. Esperar que el comportamiento cambie en el futuro.
Ver notas de implementación.
Ver notas de implementación.
Usa un nombre no estandar.
Usa un nombre no estandar.
Requiere de un prefijo de proveedor o un de nombre diferente para su uso.
Requiere de un prefijo de proveedor o un de nombre diferente para su uso.

See also