max-width - CSS | MDN
Try it
<section class="default-example" id="default-example">
<div class="transition-all" id="example-element">
Change the maximum width.
</div>
</section>
#example-element {
display: flex;
flex-direction: column;
background-color: #5b6dcd;
height: 80%;
justify-content: center;
color: white;
}
max-width overrides width, but min-width overrides max-width.
Syntax
css
/* <length> value */
max-width: 3.5em;
max-width: anchor-size(--my-anchor inline, 245px);
max-width: calc(anchor-size(width) + 4em);
/* <percentage> value */
max-width: 75%;
/* Keyword values */
max-width: none;
max-width: max-content;
max-width: min-content;
max-width: fit-content;
max-width: fit-content(20em);
max-width: stretch;
/* Global values */
max-width: inherit;
max-width: initial;
max-width: revert;
max-width: revert-layer;
max-width: unset;
Values
<length>-
Defines the
max-widthas an absolute value. <percentage>-
Defines the
max-widthas a percentage of the containing block's width. 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-
Use the available space, but not more than max-content, i.e.,
min(max-content, max(min-content, stretch)). fit-content(<length-percentage>)-
Uses the
fit-contentformula with the available space replaced by the specified argument, i.e.,min(max-content, max(min-content, argument)). stretch-
Limits the maximum width of the element's margin box to the width of its containing block. It attempts to make the margin box fill the available space in the containing block, so in a way behaving similar to
100%but applying the resulting size to the margin box rather than the box determined by box-sizing.Note: To check aliases used by browsers for the
stretchvalue and its implementation status, see the Browser compatibility section.
Accessibility
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 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 |
| Computed value | the percentage as specified or the absolute length or none |
| Animation type | a length, percentage or calc(); |
Formal syntax
max-width =
none |
<length-percentage [0,∞]> |
min-content |
max-content |
fit-content( <length-percentage [0,∞]> ) |
<calc-size()> |
<anchor-size()> |
stretch |
fit-content |
contain<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> =
<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> )
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
html
<div id="parent">
<div id="child">
Fusce pulvinar vestibulum eros, sed luctus ex lobortis quis.
</div>
</div>
CSS
css
#parent {
background: lightblue;
width: 300px;
}
#child {
background: gold;
width: 100%;
max-width: 150px;
}
Result
Specifications
| Specification |
|---|
| CSS Box Sizing Module Level 4 # sizing-values |