以下代码在 Firefox 和 Chrome 中运行良好,但在Safari中不适用(在 Mac 和 iPad 上测试):http: //jsfiddle.net/eFd87/。
<div id="wrapper">
<div id="content">
<img src="http://farm3.staticflickr.com/2783/4106818782_cc6610db2c.jpg">
</div>
</div>
#wrapper {
position: relative;
padding-bottom: 33.33%; /* Set ratio here */
height: 0;
}
#content {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: green;
text-align: center;
}
#content img {
max-height: 100%;
}
目标是让包装器 div 保持固定的纵横比(在我的 Web 应用程序中,它是一个轮播),并且其中的图像调整大小以适合 div(和中心)。
在 Safari 上,图像不会显示,因为height: 0
(这将为 img 提供 0 的高度)。使用height: 100%
图像显示但不适合 div(它溢出)。
你看到这个问题的任何解决方案吗?我已经做了好几个小时了...