4

次のことを検討してください。

<div class="wrap">
    <div class="left"></div>
    <div class="right"></div>
</div>

左のdivの高さは右のdivよりも低くなっています。左のdivを右のdivの中央に垂直に設定できますか?高さが変化するため、マージントップを設定できません。

ここに画像の説明を入力してください

jsfiddleのリンクは次のとおりです:http: //jsfiddle.net/k8972/

4

3 に答える 3

4

こんにちは今までに使用しdisplay inline-block、に与えvertical-align 、削除しますfloat

このように

.wrap{
    overflow:hidden;
    border:1px solid red;
    width:250px;
    display:table;
}


.left{
    width:100px;
    height:50px;
    background:yellow;
    display:inline-block;
    vertical-align:middle;
}

.right{
    width:100px;
    height:100px;
    background:brown;
    display:inline-block;
    vertical-align:middle;
}

ライブデモhttp://jsfiddle.net/k8972/2/

于 2012-07-12T06:23:32.920 に答える
1

display:table-cellおよびvertical-align:middle;を使用できます。ただし、IE7以下では動作しません。

于 2012-07-12T06:19:36.247 に答える
0

ここで言及されているいくつかの方法

http://phrogz.net/css/vertical-align/index.html

于 2012-07-12T06:22:54.543 に答える