We're looking for a user researcher to understand the needs of developers and designers. Is this you or someone you know? Check out the post: https://mzl.la/2IGzdXS

The min-width CSS property sets the minimum width of an element. It prevents the used value of the width property from becoming smaller than the value specified for min-width.

The element's width is set to the value of min-width whenever min-width is larger than max-width or width.

Syntax

/* <length> value */
min-width: 3.5em;

/* <percentage> value */
min-width: 10%;

/* Keyword values */
min-width: max-content;
min-width: min-content;
min-width: fit-content;
min-width: fill-available;

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

Values

<length>
The minimum width, expressed as a <length>. Negative values make the declaration invalid.
<percentage>
The minimum width, expressed as a <percentage> of the containing block's width. Negative values make the declaration invalid.

Keyword values

auto
The default minimum width for flex items, providing a more reasonable default than 0 for other layouts.
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
Defined as min(max-content, max(min-content, fill-available)).

Formal syntax

<length> | <percentage> | auto | max-content | min-content | fit-content | fill-available

Examples

table { min-width: 75%; }

form { min-width: 0; }

Specifications

Specification Status Comment
CSS Intrinsic & Extrinsic Sizing Module Level 3
The definition of 'min-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 used to define these keywords, but are superseded by this spec.)
CSS Flexible Box Layout Module
The definition of 'min-width' in that specification.
Candidate Recommendation Adds the auto keyword and uses it as the initial value.
CSS Transitions
The definition of 'min-width' in that specification.
Working Draft Defines min-width as animatable.
CSS Level 2 (Revision 1)
The definition of 'min-width' in that specification.
Recommendation Initial definition.

Initial value0
Applies toall elements but non-replaced inline elements, table rows, and row groups
Inheritedno
Percentagesrefer to the width of the containing block
Mediavisual
Computed valuethe percentage as specified or the absolute length
Animation typea length, percentage or calc();
Canonical orderthe unique non-ambiguous order defined by the formal grammar

Browser compatibility

FeatureChromeEdgeFirefoxInternet ExplorerOperaSafari
Basic support112117422
fit-content, max-content, and min-content24 -webkit- No3 -moz- 3 No No No
fill-available24 -webkit- No No No No No
auto214125

34

16 — 226

No12.17 No
FeatureAndroid webviewChrome for AndroidEdge mobileFirefox for AndroidOpera AndroidiOS SafariSamsung Internet
Basic support ? ? Yes ? ? ? ?
fit-content, max-content, and min-content ? ? No ? ? ? ?
fill-available ? ? No ? ? ? ?
auto ? ? ? ? ? ? ?

1. CSS 2.1 leaves the behavior of min-width with table undefined. Firefox supports applying min-width to table elements.

2. CSS 2.1 leaves the behavior of min-width with table undefined. Opera supports applying min-width to table elements.

3. 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.

4. Chrome uses auto as the initial value for min-width.

5. Edge uses auto as the initial value for min-width.

6. Firefox 18 and later (until the value was removed), used auto as the initial value for min-width.

7. Opera uses auto as the initial value for min-width.

See also