How to center a div, p or other html elements
We usually center a TEXT by using text-align
css property. But it may be essential that you pull a div, paragraph, table or other elements by the ear and put it in the center of a container For this, you need to apply CSS tricks.
We can do this in a few ways-
- By using
text-align
style - By
margin: auto
style - By
position: absolute
style
Now, let’s go in detail. Noted, to keep things lucid, we’ve used inline CSS in each field-
Center HTML elements by text-align
property

Center a DIV (div)
text-align
is used to align a text on left, right, center or to justify. You can also use this property to align a div or p element as well.
Suppose you have div 1
with CSS as shown below-
<div style="
width:120px;
height: 100px;
background:gold;">
DIV 1
</div>
This div
, with all its components, will get aligned on left by default. See result-
But contextually, you like to align the div 1
itself to the center with all the styling. For this just use another div
as wrapper or container. In this case our wrapper is div 2
that encircles div 1
And now, just do the following-
- use
text-align: center;
with parentdiv 2
- use
display:inline-block
with childdiv 1
Just look!
<div style="text-align:center;
border: 4px groove black;">
<div style="width:120px;
height: 100px;
background:gold;
display:inline-block;"> DIV 1
</div>
</div>
This will surely result in-
Now see gladly how similar coding on p
, and li
produce the same result-
Center a Paragraph (p) element
Code
<div style="text-align:center;
border: 4px groove black;">
<p style="width:120px;
height: 100px;
background:#c6ecd9;
display:inline-block;
border-radius:10px;"> paragraph
</p>
</div>
Result
paragraph
Center a List (li) element
Code
<div style="text-align:center;
border: 4px groove black;">
<ul>
<li>List Item 1</li>
<li>List Item 2</li>
<li>List Item 3</li>
</ul>
</div>
Result
- Item 1
- Item 2
- Item 3
Center a div by margin
property
Yes, you can easily centralize an html
element by using margin
property. In this case, you needn’t use parent DIV. Just-
- use
margin:auto
to the desired DIV you like to put in center. - You must use
width
property with value as you wish. Browser will distribute the width equally as left and right margin to centralize thediv.
- You can also set
margin-left:auto
andmargin-right:auto.
See code
<div style="height: 100px;
width:120px;
margin:0 auto;
background:gold;
border-radius:10px;">
DIV 1
</div>
Here’s the result
Center a div by position
property
Hope you know, POSITION property is used to fix placement of an html
element relative to the container or viewport. You can use it effectively to get a div
centered. For our example, we’ll use a parent container div 1
and a child div 2
. No hassle, just-
- set
width
andheight
ofdiv 1.
- also set width and height of
div 2
- set
position: absolute
in div 2. - In
div 2
, setleft: value
. This value should be equal to half of (div 1 width – div2 width).
Just look-
Code
<div style="border: 4px groove gray;
width:200px;
height:200px;">
<div style="position: absolute;
left:50px;
width: 100px;
height: 150px;
border: 4px groove gray;
text-align:center;">
DIV 2 centered by position property
</div>
</div>
Result
OK friends, hope you enjoyed!!