CSS flex-shrink property
The flex-shrink property in CSS is identified for setting the flex shrink factor of a particular flex item. In case the size of all the flex items are larger than the flex container, then the items shrink in order to fit in according to the flex-shrink.
In use, the flex-shrink property is used along with the other flex properties like the flex-grow and flex-basis property and is normally defined using the flex shorthand.
Syntax for flex-shrink property
Following is the syntax for the flex-shrink property.
flex-shrink: number| initial| inherit;
Example: CSS flex-shrink property
In the example below, we are using the flex-shrink property with different border styles, colors, and their different values. In this case, we have given the flex-shrink property value as 1 and 2.
<!DOCTYPE html>
<html>
<head>
<title>The flex-shrink property in CSS</title>
<style type="text/css">
#content {
display: flex;
width: 500px;
}
#content div {
flex-basis: 120px;
border: 3px solid purple;
}
.box {
flex-shrink: 1;
}
.box1 {
flex-shrink: 2;
}
</style>
</head>
<body>
<div id="content">
<div class="box" style="background-color:red;">A</div>
<div class="box" style="background-color:lightblue;">B</div>
<div class="box" style="background-color:yellow;">C</div>
<div class="box1" style="background-color:brown;">D</div>
<div class="box1" style="background-color:lightgreen;">E</div>
</div>
</body>
</html>
Output:

Example 2: CSS flex-shrink property
Here in the example below, we are using the flex-shrink property with different border styles, colors, and different values. In this case, we have given the flex-shrink property value as 0.
<!DOCTYPE html>
<html>
<head>
<title>The flex-shrink property in CSS</title>
<style type="text/css">
#content {
display: flex;
width: 400px;
}
#content div {
flex-basis: 110px;
border: 3px solid purple;
}
.box {
flex-shrink: 0;
}
.box1 {
flex-shrink: 0;
}
</style>
</head>
<body>
<div id="content">
<div class="box" style="background-color:red;">A</div>
<div class="box" style="background-color:lightblue;">B</div>
<div class="box" style="background-color:yellow;">C</div>
<div class="box1" style="background-color:purple;">D</div>
<div class="box1" style="background-color:gray;">E</div>
</div>
</body>
</html>
Output:

Live Example
Here in this live example, you can test the code and execute the example using different values or even edit the code example.
Browser Compatibility
There are many browsers that do not support all the latest CSS properties. Hence, while developing any webpage, if you are using any CSS property you must check the browser compatibility for that CSS property and then use it. It is of immense importance today when there is a large variety of web browsers available.
| Name of Browser |
Background size |
contain and cover |
| Chrome |
29 |
29 |
| Edge |
12 |
12 |
| Firefox |
20 |
20 |
| Internet Explorer |
10 |
10 |
| Opera |
12.1 |
12.1 |
| Safari |
9 |
9 |
| Webview Android |
4.4 |
4.4 |
| Chrome Android |
29 |
29 |
| Firefox Android |
20 |
20 |
| Opera Android |
12.1 |
12.1 |
| IOS Safari |
9 |
9 |
| Samsung Internet |
2.0 |
2.0 |
Conclusion
The initial value for the flex-shrink property in CSS is one. This property is applicable to the flex items which includes in-flow pseudo elements also. It is not an inherited property. The computed value for this property is the as specified one. The animation type for this property is a number.