CSS flex Property


Let all the flexible items be the same length, regardles of its content:

#main div {
    -webkit-flex: 1; /* Safari 6.1+ */
    -ms-flex: 1; /* IE 10 */
    flex: 1;

Try it yourself »

Definition and Usage

The flex property specifies the length of the item, relative to the rest of the flexible items inside the same container.

The flex property is a shorthand for the flex-grow, flex-shrink, and the flex-basis properties.

Note: If the element is not a flexible item, the flex property has no effect.

Default value: 0 1 auto
Inherited: no
Animatable: yes, see individual properties. Read about animatable
Version: CSS3
JavaScript syntax: object.style.flex="1" Try it

Browser Support

The numbers in the table specify the first browser version that fully supports the property.

Numbers followed by -webkit-, -ms- or -moz- specify the first version that worked with a prefix.

flex 29.0
21.0 -webkit-
10.0 -ms-
18.0 -moz-
6.1 -webkit- 12.10

CSS Syntax

flex: flex-grow flex-shrink flex-basis|auto|initial|inherit;

Property Values

Value Description
flex-grow A number specifying how much the item will grow relative to the rest of the flexible items
flex-shrink A number specifying how much the item will shrink relative to the rest of the flexible items
flex-basis The length of the item. Legal values: "auto", "inherit", or a number followed by "%", "px", "em" or any other length unit
auto Same as 1 1 auto.
initial Same as 0 1 auto. Read about initial
none Same as 0 0 auto.
inherit Inherits this property from its parent element. Read about inherit

Related Pages

CSS Reference: flex-basis property

CSS Reference: flex-direction property

CSS Reference: flex-flow property

CSS Reference: flex-grow property

CSS Reference: flex-shrink property

CSS Reference: flex-wrap property

HTML DOM reference: flex property