How to Horizontally Center a <div> in Another <div>
The HTML <div> tag is used to define parts of a page or a document. It groups large sections of HTML elements and styles them with CSS.
If you want to put a <div> element in the center of another <div>, use CSS styles to position it exactly at the center of another <div> horizontally. Follow the steps below and get the code snippet.
Create HTML
- Create two <div> elements with id attributes named "outer-div" and "inner-div". Place the second <div> within the first one.
<div id="outer-div">
<div id="inner-div">I am a horizontally centered div.</div>
</div>
Add CSS
- Set the width of the outer element (i.e. 100% covers the whole line). Change it according to your requirements.
- Set the margin property to "auto" to horizontally center the <div> element within the page. The "margin: 0 auto" does the actual centering.
- Set your preferred colors for the outer and inner <div> elements by using the background-color property.
- Use the "inline-block" value of the display property to display the inner <div> as an inline element as well as a block.
- Set the text-align property on the outer <div> element to center the inner one. This property only works on inline elements.
#outer-div {
width: 100%;
text-align: center;
background-color: #0666a3
}
#inner-div {
display: inline-block;
margin: 0 auto;
padding: 3px;
background-color: #8ebf42
}
Here is the full code.
Example of horizontally centering a <div> element within another one with the text-align property:
<!DOCTYPE html>
<html>
<head>
<style>
#outer-div {
width: 100%;
text-align: center;
background-color: #0666a3
}
#inner-div {
display: inline-block;
margin: 0 auto;
padding: 3px;
background-color: #8ebf42
}
</style>
</head>
<body>
<div id="outer-div">
<div id="inner-div"> I am a horizontally centered div.</div>
</div>
</body>
</html>
Result
I am a horizontally centered div.
Set also padding to create space around the inner element.
Example of horizontally centering a <div> element within another one with the display property:
<!DOCTYPE html>
<html>
<head>
<style>
#main-container {
display: flex;
width: 100%;
justify-content: center;
background-color: #0666a3;
}
#main-container div {
background-color: #8ebf42;
padding: 10px;
}
</style>
</head>
<body>
<div id="main-container">
<div> I am a horizontally centered div with the CSS display property.</div>
</div>
</body>
</html>