我正在尝试在可调整大小的DIV
. 图像必须保持其比例并且永远不会超过 100%(宽度和高度)——即使包含DIV
大于图像。
图像还必须水平和垂直居中。Chrome 和 Safari 完美地做到了这一点 - Internet Explorer 10 没有。
我已经设置了一个快速的jsfiddle来说明这个问题。
HTML:
<div id="diver">
<img src="http://ie.microsoft.com/testdrive/Performance/Minesweeper/images/ie-logo.png" style="" />
</div>
和CSS:
#diver {
border:1px solid #000000;
width:200px;
height:200px;
text-align:center;
display: table-cell;
vertical-align: middle;
}
img {
max-width:100%;
max-height:100%;
}
尝试在 Chrome 中将框的大小调整为小于 100% 的宽度和高度,您将得到类似于以下图像的内容:
小于 100% 高度:
小于 100% 宽度:
然而,Internet Explorer 10 仅缩放高度。宽度不会低于 100%,这是主要问题。
我可以让 IE 缩放宽度,类似于 Chrome/Safari,但它需要将DIV
高度(是的,高度)设置为较低的值,比如 10px,这在 imo 中有点奇怪。
我知道可以在 javascript 中动态缩放图像,但是当 Internet Explorer 应该能够正确处理缩放时,我认为不需要额外的 javascript。