CSS flex-grow Property
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
<!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.
Value | Explanation |
---|
Number | A 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
<!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