Open In App
Related Articles

How to make div not larger than its contents using CSS?

Improve Article
Improve
Save Article
Save
Like Article
Like

There are three ways to achieve this problem:

  1. By default case
  2. Using inline-block property
  3. Using fit-content property in width and height

Default Case:

In HTML div is by default fit to content inside it. The example goes like this:
Example 1:




<!DOCTYPE html>
<html lang = "en" dir = "ltr">
  <head>
    <meta charset = "utf-8">
    <title>Geeks for Geeks Example</title>
    <!--CSS Code-->
    <style media = "screen">
      body {
        background: orange;
        overflow: hidden;
        color: white;
      }
      .GeeksForGeeks {
        background: dodgerblue;
        position: absolute;
        top: 50%;
        left: 1%;
        right: 1%;
      }
    </style>
  </head>
  
  <body>
    <!-- HTML Code -->
    <center><h1 style = "color:forestgreen ; top:35% ; left: 35% ; 
    position:absolute; ">Geeks For Geeks</h1></center>
    <center>
      <div class = "GeeksForGeeks">
        Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
        tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim
        veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea
        commodo consequat. Duis aute irure dolor in reprehenderit in voluptate
        velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint
        occaecat cupidatat non proident, sunt in culpa qui officia deserunt
        mollit anim id est laborum.
      </div>
    </center>
  </body>
</html>


Output:
The output of two different screen width is shown which proves that it fits with content inside it.
Screen 1:


Screen 2:

Using inline-block property:

Use display: inline-block property to set a div size according to its content.
Example 2:




<!DOCTYPE html>
<html lang = "en" dir = "ltr">
  <head>
    <meta charset = "utf-8">
    <title>Geeks for Geeks Example</title>
    <!--CSS Code-->
    <style media = "screen">
      body {
        background: violet;
        overflow: auto;
        color: white;
      }
      .GeeksForGeeks {
        background: dodgerblue;
        position: absolute;
        display: inline-block;
        left: 1%;
        right: 1%;
        top: 50%;
      }
    </style>
  </head>
  
  <body>
    <!-- HTML Code -->
    <center><h1 style="color: forestgreen; top: 35%; left: 35%;
      position: absolute;">Geeks For Geeks</h1></center>
    <center>
      <div class="GeeksForGeeks">
        Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
        tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim
        veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea
        commodo consequat. Duis aute irure dolor in reprehenderit in voluptate
        velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint
        occaecat cupidatat non proident, sunt in culpa qui officia deserunt
        mollit anim id est laborum.
      </div>
    </center>
  </body>
</html>


Output:
The output of two different screen width is shown which proves that it fits with content inside it.
Screen 1:


Screen 2:

Using fit-content property in width and height:

In this method we set the width and height property to fit-content value.
Example 3:




<!DOCTYPE html>
<html lang = "en" dir = "ltr">
  <head>
    <meta charset = "utf-8">
    <title>Geeks for Geeks Example</title>
    <!--CSS Code-->
    <style media = "screen">
      body {
        background: tomato;
        overflow: hidden;
        color: white;
      }
      .GeeksForGeeks {
        background: crimson;
        position: absolute;
        width:fit-content;
        height:fit-content;
        left: 0;
        top: 50%;
      }
    </style>
  </head>
  
  <body>
    <!-- HTML Code -->
    <center><h1 style = "color: lime; top: 35%; left: 35%;
      position: absolute;">Geeks For Geeks</h1></center>
    <center>
      <div class = "GeeksForGeeks">
        Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
        tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim
        veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea
        commodo consequat. Duis aute irure dolor in reprehenderit in voluptate
        velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint
        occaecat cupidatat non proident, sunt in culpa qui officia deserunt
        mollit anim id est laborum.
      </div>
    </center>
  </body>
</html>


Output:
The output of two different screen width is shown which proves that it fits with content inside it.
Screen 1:


Screen 2:


Whether you're preparing for your first job interview or aiming to upskill in this ever-evolving tech landscape, GeeksforGeeks Courses are your key to success. We provide top-quality content at affordable prices, all geared towards accelerating your growth in a time-bound manner. Join the millions we've already empowered, and we're here to do the same for you. Don't miss out - check it out now!

Last Updated : 16 Apr, 2020
Like Article
Save Article
Previous
Next
Similar Reads
Complete Tutorials