HTML- Center a div horizontally and vertically
In this tutorial, we are going to learn about how to center a div horizontally and vertically in HTML with the help of examples.
Consider, we have the following div element in our HMTL:
<div class="container">
<h1>Hello, User</h1>
</div>
To center a div horizontally and vertically in HTML, add the display:flex
, justify-content: center
and align-items: center
to the div CSS class.
“justify-content: center” centers the div horizontally.
“align-items: center” centers the div vertically.
Here is an example:
<div class="container">
<h1>Hello, User</h1>
</div>
CSS:
.container{
display: flex;
justify-content: center;
align-items: center;
height: 100vh;
}
or we can add it inline using the style
attribute in HTML.
<div style="display: flex;justify-content: center;
align-items:center;height: 100vh;">
<h1>Hello, User</h1>
</div>
Centering the div using absolute position
We can use the absolute positioning in html to center the div horizontally and vertically.
Here is an example:
<div class="container">
<h1>Hello, User</h1>
</div>
.container{
position:absolute;
left:50%;
top:50%;
transform:translate(-50%, -50%);
}
-
Here we added
position:absolute
to the div element, so the element breaks out from the normal document flow and positioned to its relative parent (eg: body or parent element). -
The
left:50%
moves the element 50% right from its position. -
The
top:50%
moves the element 50% down from its position. -
The
translate(-50%, -50%)
moves the element 50% up, 50% left of it’s position.