mozilla
Your Search Results

    max-width

    Summary

    The max-width property is used to set the maximum width of a given element. It prevents the used value of the width property from becoming larger than the value specified for max-width.

    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
    • Animatable yes, as a length, percentage or calc(); when both values are lengths, they are interpolated as lengths; when both values are percentages, they are interpolated as percentages; otherwise, both values are converted into a calc() function that is the sum of a length and a percentage (each possibly zero), and these calc() functions have each half interpolated as real numbers.
    • Canonical order the unique non-ambiguous order defined by the formal grammar

    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;
    max-width: fill-available;
    
    max-width: inherit
    

    Values

    none
    The width has no maximum value.
    <length>
    See <length> for possible units.
    <percentage>
    Specified as a <percentage> of containing block's width.
    max-content
    The intrinsic preferred width.
    min-content
    The intrinsic minimum width.
    fill-available
    The containing block 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" <div> has its width property set so that it will use the full width of the parent <div> but the max-width property constrains its width to 150px.

    <div id="parent">
        <div id="child">
            The Mozilla community produces a lot of great software.
        </div>
    </div>
    
    #parent { 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 Firefox (Gecko) Internet Explorer Opera Safari (WebKit)
    Basic support 1.0 1.0 (1.7 or earlier) 7.0 4.0 2.0.2 (416),
    buggy before
    applies to <table> [1] Not supported (Yes) Not supported (Yes) Not supported
    max-content, min-content, fit-content, and fill-available Not supported [3] 3.0 (1.9)-moz [2] Not supported Not supported Not supported [3]
    Feature Android Firefox Mobile (Gecko) IE Phone Opera Mobile Safari Mobile
    Basic support ? ? ? ? ?

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

    See also

    Hide Sidebar