CSS | flex-shrink Property

The flex-shrink property specifies how much the item will shrink compared to others item inside that container. It defines the ability of an element to shrink in compared to the other elements which are placed inside the same container.

Note: If the item in the container is not flexible item then flex-shrink property will not affect that item.

Syntax:

flex-shrink: number| initial| inherit;

Property values:

  • number: A number that defines how the item will shrink compare to other flexible items.
  • initial: It sets the value to it’s default value.
  • inherit: It inherit the property from it’s parent elements.

Example: Here we are going to see in a single container there are 5 div, we will apply the flex-shrink on 2nd div and that div will shrink compared to other 4 div’s. We can apply flex-shrink on any document in the same container and that div will shrink compared to other div’s width, flex-shrink will shrink that div compared to other items in that container.

filter_none

edit
close

play_arrow

link
brightness_4
code

<!DOCTYPE html>
<html>
  
<head>
    <title>
        CSS | flex-shrink Property
    </title>
    <style>
        #main {
            width: 450px;
            height: 200px;
            border: 1px solid black;
            display: -webkit-flex;
            display: flex;
            color: white;
        }
          
        h1 {
            color: #009900;
            font-size: 42px;
            margin-left: 50px;
        }
          
        h3 {
            margin-top: -20px;
            margin-left: 50px;
        }
          
        #main div {
            flex-grow: 1;
            flex-shrink: 1;
            flex-basis: 100px;
        }
          
        <!-- shrinking the 2nd div compare to others -->
        #main div:nth-of-type(2) {
            flex-shrink: 4;
        }
    </style>
</head>
  
<body>
    <h1>GeeksforGeeks</h1>
  
    <h3>The flex-shrink:number</h3>
  
    <!-- Making 5 divs in main -->
    <div id="main">
        <div style="background-color:#009900;">
            <p>
                A number specifying how much the item 
              will shrink relative to the rest of the 
              flexible items.
            </p>
        </div>
  
        <div style="background-color:#00cc99;">
            <p> Default value is 1</p>
        </div>
  
        <div style="background-color:#0066ff;">
            <p>
              Initial Sets this property to 
              its default value
            </p>
        </div>
  
        <div style="background-color:#66ffff;;"></div>
  
        <div style="background-color:#660066;">
            <p>
              Inherits this property from
              its parent element
            </p>
        </div>
    </div>
</body>
  
</html>             

chevron_right


Output:

Supported Browser: The browser supported by CSS | flex-shrink Property are listed below:

  • Google Chrome 29.0
  • Internet Explorer 11.0
  • Mozila Firefox 28.0
  • Opera 17.0
  • Safari 9.0


My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.