あなたの質問を読み直した後、<div>
が少なくとも最高の画像と同じくらい高いということは、単にこれを行うだけです:
CSS
img {
vertical-align: middle;
}
ここで試してみてください: http://jsfiddle.net/AsD9q/
明示的に設定するか、コンテナーでwidth
使用することにより、(ビューポートが小さすぎる場合) div が壊れないようにすることもできます: http://jsfiddle.net/MvDZJ/ (幅を使用) またはhttp://jsfiddle.net/xMtBp / (空白を使用)white-space: nowrap;
それが結果です:
divのすべての高さで機能する最初の答え:
コンテナ自体については何も言わなかったので、ビューポートよりも広くないと思います。単純に次のようなことを行うよりも:
HTML
<div>
<img src="http://lorempixel.com/200/100/">
<img src="http://lorempixel.com/200/80/">
<img src="http://lorempixel.com/200/120/">
<img src="http://lorempixel.com/200/60/">
</div>
CSS
div {
display: table-cell;
vertical-align: middle;
/* only added for demonstration */
height: 200px;
border: 1px solid red;
}
img {
vertical-align: middle;
}
ただし、IE7 では処理できないため、これは機能しませんdisplay: table-cell
。ここで試すことができます: http://jsfiddle.net/3vXXy/。