0

次のように高さ200pxの青いブロックが表示されないのはなぜですか?

<div style="position: absolute; height: 500px;">
    <div style="width: 200px; height: 300px; background-color: Green; position: relative;">
        a</div>
    <div style="width: 200px; background-color: Blue; top: 0px; bottom: 0px; position: relative;">
        b</div>
</div>
4

3 に答える 3

4

相対位置を持つ要素の位置プロパティ (上、左、右、下) は、現在の位置からのオフセットを示します。相対的に配置された要素に 0 の上部と下部を設定します。あなたは基本的にどこにも行かないように言いました。

于 2012-12-31T13:53:24.253 に答える
2

div に高さを設定していません。高さを設定した div だけが 500px に設定されています

また、上と下がどのように機能することを期待していましたか...期待どおりに機能しないと言いましたが、左上から位置を設定するためにそこにあります。

このプロパティは、パディング、スクロールバー、ボーダー、およびマージンを含む要素の上部の位置を指定します。

引用元: http://www.w3schools.com/jsref/prop_style_top.asp

補足として、そこに px を置く必要はないので、top:0; bottom:0;

于 2012-12-31T13:49:52.783 に答える
1

absolute相対的な親を基準にして要素の寸法を再計算するには、位置を に設定する必要があります。例はこちら

于 2012-12-31T13:50:41.520 に答える