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

0

クラス画像で、高さを自動に設定します。それはそれを修正する必要があります。http://jsfiddle.net/Wh2Tr/1/

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