如何在指定区域对图像进行居中,而不调整图像大小?

我想在一个区域中居中放置图像,而无需调整大小...我正在使用HTML。

例:

我有一个图像<img src ='img1.png'width = '64'height = '64'> - 图像实际上是64x64。 它显示完美。

现在,我还有另一张图片,不过,图像并不像它应该的那么大,它的32x32-这里发生的是它调整图像的大小到64x64,并使它看起来像$%^&。

如何让图像更小,然后在'img'区域居中所需的宽度和高度,而无需调整以前的尺寸?


你需要的是这样的:

<div class="box">
    <img src="whatever size image you'd like" />
</div>

对于样式(在外部样式表中,natch),您可以应用:

/* Image centering */
div.box {
    border: 1px black solid;
    height: 64px;
    width: 64px;
    background: #444;
    display: table-cell;
    vertical-align: middle;
}
.box img {
    display:block;
    margin: 0px auto;
}

这适用于尺寸<= 64x64px的图片,并且可以轻松修改以适合更大的图片。 这里的关键要素是

  • 在div上设置尺寸
  • 显示为表格单元格(允许垂直对齐)
  • 垂直对齐(在Y轴上对齐/出奇怪的黑客)
  • 在img元素上显示:block
  • 边距:自动将图像横向居中

  • 没有IE不友好display:table-cell解决方案display:table-cell

    <!DOCTYPE html>
    <style>
    div {
      line-height:64px; /* that's the secret sauce */
      text-align:center;
      width:64px; height:64px;
    }
    img {vertical-align:middle}
    </style>
    <div><img …></div>
    

    您可以尝试将图像放在64x64的DIV中,而不是指定图像尺寸。 然后你可以设置div的样式,使其内容居中,任何溢出都被隐藏起来。

    链接地址: http://www.djcxy.com/p/61139.html

    上一篇: How do you center an image in a specified area, without resizing the image?

    下一篇: Passing a single item as IEnumerable<T>