div中的div水平垂直居中
时间: 2024-12-02 08:15:05 浏览: 42
在HTML中,想要在一个`<div>`元素内部水平和垂直居中另一个`<div>`,可以采用CSS的方式实现。常见的方法有几种:
1. **Flexbox布局**:
如果父容器是flex容器,你可以使用`display: flex; justify-content: center; align-items: center;`来实现两个`div`的居中对齐。例如:
```html
<style>
.parent {
display: flex;
justify-content: center;
align-items: center;
height: 100vh; /* 或者设置你需要的高度 */
}
</style>
<div class="parent">
<div>...内容...</div>
</div>
```
2. **Grid布局**:
如果父容器是grid容器,同样使用`justify-items: center; align-items: center;`:
```html
<style>
.parent {
display: grid;
place-items: center;
height: 100vh;
}
</style>
<div class="parent">
<div>...内容...</div>
</div>
```
3. **绝对定位** (配合`position: relative`):
父容器设置`position: relative;`,子容器设置`position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%);`:
```html
<style>
.parent {
position: relative;
width: 100%;
height: 100vh;
}
.child {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
}
</style>
<div class="parent">
<div class="child">...内容...</div>
</div>
```
4. **内联块级元素** (对于行内的直接子元素):
可以通过设置`display: inline-block; vertical-align: middle;`以及`text-align: center;`来实现:
```html
<style>
.parent {
text-align: center;
vertical-align: middle;
line-height: 0;
}
</style>
<div class="parent">
<div style="display: inline-block;">...内容...</div>
</div>
```
阅读全文
相关推荐

















