4

Windows 版 Safari 未在绝对定位的 div 内正确计算 img 高度。该样式在 Chrome 和 Firefox 上运行良好。

http://jsfiddle.net/Wh2Tr/

HTML:

<div class="image">
  <div class="image-inner">
    <img src="http://lorempixel.com/400/200" />
  </div>
</div>

CSS:

.image {
    position: relative;
    max-width: 100%;
    height: 0;
    padding-bottom: 75%;
}

.image-inner {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
}

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

注意事项:

  1. 这是对 HTML 的简化。有多个不同大小的图像需要具有相同的高度(因此使用 width:100%;height:auto; 将不起作用)
  2. 这需要自适应/响应,因此我无法为图像或容器设置明确的宽度或高度。
4

2 回答 2

1

同样的问题,我用过jquery。到目前为止我找不到任何解决方案:

$('.image-inner').css('height','100%').height($('.image-inner').height());
于 2014-12-09T11:28:16.793 回答
0

在类图像上将高度设置为自动。那应该解决它。http://jsfiddle.net/Wh2Tr/1/

.image {
    position: relative;
    max-width: 100%;
    height: auto;
    padding-bottom: 75%;
}
于 2013-11-07T18:22:32.063 回答