長いdivコンテナーをdisplay:table
に設定し、その中の&divをdisplay:table-cell; vertical-align: middle
に設定しました。
垂直方向の配置の結果には本当に満足していますが、
float: right
はdisplay: table-cell
では機能しません。ここに例があります(黄金のdivを右にフロートさせたい)。 JSは使えません。 IE7 +、またはIE7が不可能な場合はIE8 +で動作させるために必要です。ヒント/アイデアはありますか?
これがIE7または8で動作するかどうかはわかりませんが、width: 1px
、width: auto
およびwhite-space: nowrap
。テーブルレイアウトのすべてのセルを1ピクセル幅として定義しますが、折り返さないようにします。次に、右にフロートするセルの前に空のパディングセルを追加します。
Chrome、Opera、Firefox、IEの最新バージョンで少なくとも動作するようです。
この垂直位置合わせは機能しません:
<div style="display: table-cell; vertical-align: middle; float: right">...</div>
しかし、これには私にとってはうまくいきます:
<div style="float: right">
<div style="display: table-cell; vertical-align: middle">...</div>
</div>