w3resource

HTML-CSS: Display table centering

HTML-CSS : Exercise-26 with Solution

Using HTML, CSS vertically and horizontally centers a child element within its parent element, using display: table.

  • Use display: table to make the .center element behave like a <table> element.
  • Set height and width to 100% to make the element fill the available space within its parent element.
  • Use display: table-cell on the child element to make it behave like a <td> elements.
  • Use text-align: center and vertical-align: middle on the child element to center it horizontally and vertically.
  • The outer parent (.container) must have a fixed width and height.

HTML Code:

<!--License: https://bit.ly/3GjrtVF-->
<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width">
  <title>Using HTML, CSS vertically and horizontally centers a child element within its parent element, using display: table</title>
</head>
<body>
<div class="w3rcontainer">
  <div class="center"><span>w3resource.com</span></div>
</div>
</body>
</html>

CSS Code:

.w3rcontainer {
  border: 1px solid orange;
  height: 250px;
  width: 250px;
}

.center {
  display: table;
  height: 100%;
  width: 100%;
}

.center > span {
  display: table-cell;
  text-align: center;
  vertical-align: middle;
}

HTML-CSS Editor:

See the Pen html-css-practical-exercises by w3resource (@w3resource) on CodePen.


What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.

Share this Tutorial / Exercise on : Facebook and Twitter

HTML-CSS: Tips of the Day

How to get CSS to select ID that begins with a string ?

[id^=product]

^= indicates "starts with". Conversely, $= indicates "ends with".

The symbols are actually borrowed from Regex syntax, where ^ and $ mean "start of string" and "end of string" respectively.

Ref: https://bit.ly/3rSZ2t7