如何在固定大小的div中正确显示大图像?

时间:2015-06-21 03:41:21

标签: javascript jquery html css

我有很多不同大小的图像(300x400,500x300 ......)。我希望在固定大小的div中显示正确缩放的那些大图像。

例如,我有一个200x200 div和一个500 * 300图像。

|--------------------|
|                    |
|                    |
|   div(200x200)     |
|                    |
|                    |
|--------------------|

|--------------------------------|
|                                |
|                                |
|   image(500x300)               |
|                                |
|                                |
|                                |
|                                |
|--------------------------------|

因此图像的宽度将为200像素,高度将按比例缩放,并变为300 * 200/500 = 125像素。图像看起来会更小,但它保持比例并且看起来仍然很好。

|--------------------|
|      Blank         |
|--------------------|
|                    |
|   Image(200x125)   |     # div (200x200)
|                    |
|--------------------|
|      Blank         |
|--------------------|

我该怎么做?是否有任何javascript库可以执行此操作?

3 个答案:

答案 0 :(得分:1)

您需要将max-widthmax-height css属性用于img标记。

img {
     max-width: 100%;
     max-height: 100%;
}

这将使您的图像相对于其父容器保持纵横比。

当我们不知道图像的宽度和高度时,我建议使用以下css代码,它会自动对齐父容器中的图像。

.image-wrapper {
    display: table-cell;
    width: 100px;
    height:150px;
    vertical-align: middle;
    border: 1px solid black;
}

.image-wrapper img{
    max-width: 100%;
    max-height: 100%;
    display: block;
    margin: 0 auto;
}

Working Fiddle

使用background css属性执行相同的操作:

<强> Working Fiddle

答案 1 :(得分:1)

&#13;
&#13;
.divclass img {
  max-width: 100%;
}
&#13;
&#13;
&#13;

答案 2 :(得分:0)

HTML:

<div class="outerDiv">
    <img src="imagename.jpg" class="img">
</div>

CSS:

.img{
max-width:100%
}

希望这有帮助