2012-01-03 9 views
0
<div id="home"> 
    <div id="fix">aaa<br />fff</div> 
    <div id="text">bvvvbbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb bbb </div> 
</div> 
#fix { 
    width: 500px; 
    position: fixed; 
    background-color: blue; 
    top:0; 
    left:0; 
} 
#text { 
    background-color: green; 
    margin-top:auto; 
    width: 500px; 
    height: 700px; 
} 

が動作していないなぜこの例ではないmargin-top仕事?「マージントップ:オートは」

div#fixでは、データはPHPを使用して自動的に生成されます。)

デモ:http://jsfiddle.net/uK2RK/9/

EDIT:DIV#テキストに今のdiv#フィックスカバー。私はmargin-topを設定することができますが、どれくらいの行があるのか​​分かりませんが、これはPHPで自動的に生成されます。

+2

実際に達成しようとしていることを説明できますか? –

+0

'margin-top:auto;'実際に*行うにはどうしますか? [垂直方向](http://stackoverflow.com/search?q= [css] + vertical + align)しようとしていますか?[align](http://stackoverflow.com/search?q= [css] + vertical +整列&提出=検索)div? –

+0

自動垂直マージンは変な獣です。 – BoltClock

答えて

3

あなたはどういうふうに動作しているのですか(はどういうふうに動作すると思いますか?overflow: visible(デフォルト)と(あるの#text)通常の流れで(例えばDIVなど)ブロックレベル非置換要素でautoの値を持つセクションCSS 2.1 specificationmargin-topの10.6.3を1として

margin-top: 0として扱われる。

したがって、通常のフローでは、前の要素の下端から離れているため、要素は0ピクセルに配置されます(再生されていない他の余白/パディングはない)。前の要素(#fix)はposition: fixedなので、通常のフローではないので、#textはそのコンテナの先頭(#home)から0ピクセル離れて配置されるような要素はありません。この位置は#fixの下にあることがあります。

+0

と私はdiv#idからマージントップを作ることができますか?私は私の答え –

+0

を編集@RonCorazon - できません。それは「位置:固定」なので、通常の流れから取り除かれ、他の要素の余白がそれに触れることはありません。もしあなたがその高さを知っていたら、それを偽造することができます。 – Quentin

+0

ここ、stackoverflow上に可能です - 上のオレンジ色のメニュー。 –

関連する問題