Skip to main content

CSS Display

CSS Display

The CSS display property is one of the most fundamental and widely used properties in web development. It controls how an element is displayed and dictates its behavior in the document's layout. Understanding the various values of the display property allows developers to create flexible and responsive designs. In this article, we will delve deep into the display property, its values, use cases, and practical examples.


01. What is the CSS display Property?

The display property defines how an element is rendered in the document flow. It determines the type of box the element generates, such as block-level, inline, flex, or grid.

Commonly used values of the display property include:

  • block
  • inline
  • inline-block
  • flex
  • grid
  • none

02. Values of the display Property

2.1 display: block;

Elements with display: block; occupy the full width of their container by default and start on a new line.

<style>
  .block-element {
    display: block;
    background-color: lightblue;
    padding: 10px;
  }
</style>

<div class="block-element">This is a block element</div>

2.2 display: inline;

Elements with display: inline; do not start on a new line and only occupy as much width as their content.

<style>
  .inline-element {
    display: inline;
    background-color: lightgreen;
    padding: 5px;
  }
</style>

<span class="inline-element">Inline Element 1</span>
<span class="inline-element">Inline Element 2</span>

2.3 display: inline-block;

Elements with display: inline-block; behave like inline elements but allow block-level styling like setting width and height.

<style>
  .inline-block-element {
    display: inline-block;
    background-color: lightcoral;
    width: 100px;
    height: 50px;
  }
</style>

<div class="inline-block-element">Element 1</div>
<div class="inline-block-element">Element 2</div>

2.4 display: flex;

The flex value makes an element a flex container, enabling the use of Flexbox for layout control.

<style>
  .flex-container {
    display: flex;
    justify-content: space-around;
    align-items: center;
    background-color: lightgray;
    height: 100px;
  }

  .flex-item {
    background-color: lightpink;
    padding: 10px;
  }
</style>

<div class="flex-container">
  <div class="flex-item">Item 1</div>
  <div class="flex-item">Item 2</div>
  <div class="flex-item">Item 3</div>
</div>

2.5 display: grid;

The grid value makes an element a grid container, allowing the use of Grid Layout for controlling rows and columns.

<style>
  .grid-container {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
    background-color: lightyellow;
  }

  .grid-item {
    background-color: lightblue;
    padding: 10px;
  }
</style>

<div class="grid-container">
  <div class="grid-item">Grid Item 1</div>
  <div class="grid-item">Grid Item 2</div>
  <div class="grid-item">Grid Item 3</div>
</div>

2.6 display: none;

The none value hides the element, removing it from the document flow and layout.

<style>
  .hidden {
    display: none;
  }
</style>

<div class="hidden">You won’t see this text!</div>

03. Practical Applications of the display Property

  • Creating flexible layouts with flex and grid.
  • Hiding elements conditionally using none.
  • Ensuring proper spacing and alignment with block, inline, and inline-block.

04. Browser Compatibility

The display property is supported across all modern browsers. However, advanced values like grid and flex may require careful testing in older browsers.


05. Conclusion

The display property is a cornerstone of CSS and essential for controlling how elements appear and behave in layouts. By mastering its values and understanding their applications, you can create robust, responsive, and visually appealing designs for the web.

Comments