CSS flex-grow Property

You are Here:

CSS flex-grow Property

CSS flex-grow property specifies how much of the remaining space in the flex container should be assigned to the specific flex item.

Example

HTML Online Editor
<!DOCTYPE html> <html lang="en-US"> <head> <style> p+div{ display: flex; width: 100%; border: 1px solid #8c8c8c; } p+div > div{ height: 90px; border: 1px solid #8c8c8c; margin: 10px; flex-grow: 1; -webkit-flex-grow: 1; } #parent1 > div:nth-child(2){ flex-grow: 2; -webkit-flex-grow: 2; } </style> </head> <body> <h1>CSS flex-grow Property</h1> <p>The following div has all child with flex-grow: 1;</p> <div id="parent"> <div>Div 1</div> <div>Div 2</div> <div>Div 3</div> </div> <p>The following div has first and third child with flex-grow: 1; and second child with flex-grow: 2</p> <div id="parent1"> <div>Div 1</div> <div>Div 2</div> <div>Div 3</div> </div> </body> </html>

Syntax

Using CSS

element{ flex-grow: 1; }

Using Javascript

object.style.flexGrow="1";

Animatable

Yes, flex-grow property is animatable. CSS Animatable Properties Reference.

Default Value

Default value for CSS flex-grow property is 0.

Property Value

The following table provides a list of values for CSS flex-grow property.

ValueExplanation
NumberA number specifying how much the item will grow relative to the rest of the flexible items. Negative values are invalid.

Using JavaScript

In the following example, we will demonstrate how to change the CSS flex-grow property of an element using JavaScript.

Example

HTML Online Editor
<!DOCTYPE html> <html lang="en-US"> <head> <style> #parent{ display: flex; width: 100%; border: 1px solid #8c8c8c; } #parent > div{ height: 90px; border: 1px solid #8c8c8c; margin: 10px; flex-grow: 1; -webkit-flex-grow: 1; } </style> </head> <body> <h1>CSS flex-grow Property</h1> <div id="parent"> <div>Div 1</div> <div>Div 2</div> <div>Div 3</div> </div> <button onclick="myFunction()">Click Me</button> <script> var x = document.getElementById("parent").firstElementChild; function myFunction(){ x.style.flexGrow = "2"; x.style.WebkitFlexGrow = "2"; } </script> </body> </html>

Reminder

Hi Developers, we almost covered 98.7% of CSS Tutorials with examples for quick and easy learning.

We are working to cover every Single Concept in CSS.

Please do google search for:

Join Our Channel

Join our telegram channel to get an instant update on depreciation and new features on HTML, CSS, JavaScript, jQuery, Node.js, PHP and Python.

This channel is primarily useful for Full Stack Web Developer.

Share this Page

Meet the Author