我有一个div 200x200px。我想在div的中间放置一个50 x 50 px的图像。

怎样才能做到呢?

我能够得到它的中心水平使用文本对齐:中心的div。但垂直对齐是问题..


当前回答

这对我很管用。将此添加到image css:

img
{
   display: block;
   margin: auto;
}

其他回答

如果你知道父div和图像的大小,你可以使用绝对定位。

通常,我将设置行高为200px。通常是这样的。

适用于旧浏览器(IE >= 8)

绝对位置与自动边距相结合可以使元素水平和垂直居中。元素位置可以基于使用相对定位的父元素位置。查看结果

img {
    position: absolute;
    margin: auto;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

简单地设置图像边缘自动如下所示。

img{
 margin:auto;
 width:50%;
 height:auto;
}

检查这些例子

在CSS中这样做:

img
{

  display:table-cell;
  vertical-align:middle;
  margin:auto;
}