Html 仅使用css在div中垂直居中图像

Html 仅使用css在div中垂直居中图像,html,css,Html,Css,我正在尝试将一个包含在div中的图像居中,并将display设置为table。在其中,我希望显示一个图像,它应该位于中心,垂直和水平。我使用margin:auto实现了水平位置,并将其设置为display:table cell,但它不垂直居中。任何帮助都会很好 .overlay{高度:50%;背景:红色;位置:固定; 排名:0; 左:0; 身高:50%; 宽度:100%; 显示:表;} .轻扫{高度:80px; 显示:表格单元格; 页边距:自动;} 我建议给.overlay一个而不是一个表。然

我正在尝试将一个包含在div中的图像居中,并将display设置为table。在其中,我希望显示一个图像,它应该位于中心,垂直和水平。我使用margin:auto实现了水平位置,并将其设置为display:table cell,但它不垂直居中。任何帮助都会很好

.overlay{高度:50%;背景:红色;位置:固定;
排名:0;
左:0;
身高:50%;
宽度:100%;
显示:表;}
.轻扫{高度:80px;
显示:表格单元格;
页边距:自动;}

我建议给
.overlay
一个而不是一个表。然后,只需对父对象应用三条规则,即可将图像居中:

.overlay {
  display: flex;
  align-items: center;
  justify-content: center;
}
请注意,您不再需要在
上使用
显示:表格单元格
边距:自动
。轻扫

这可以在以下示例中看到:

.overlay{
身高:50%;
背景:红色;
位置:固定;
排名:0;
左:0;
身高:50%;
宽度:100%;
显示器:flex;
对齐项目:居中;
证明内容:中心;
}
.刷卡{
高度:80px;
}

我建议给
.overlay
一个而不是一个表。然后,只需对父对象应用三条规则,即可将图像居中:

.overlay {
  display: flex;
  align-items: center;
  justify-content: center;
}
请注意,您不再需要在
上使用
显示:表格单元格
边距:自动
。轻扫

这可以在以下示例中看到:

.overlay{
身高:50%;
背景:红色;
位置:固定;
排名:0;
左:0;
身高:50%;
宽度:100%;
显示器:flex;
对齐项目:居中;
证明内容:中心;
}
.刷卡{
高度:80px;
}

在顶部和底部使用填充物

.overlay{背景:红色;位置:固定;
排名:0;
左:0;
填充:5%05%0;
宽度:100%;
显示:表;}
.轻扫{高度:80px;
显示:表格单元格;
页边距:自动;}

在顶部和底部使用填充物

.overlay{背景:红色;位置:固定;
排名:0;
左:0;
填充:5%05%0;
宽度:100%;
显示:表;}
.轻扫{高度:80px;
显示:表格单元格;
页边距:自动;}