2011-09-17 15 views
1

sticky footerを実装しようとしていますが、主なラッピングdivの100%の高さが高すぎます(#body-wrap)コンテンツとフッターの間のギャップ。そのため、画面の下部にあるフッターの代わりに、ページを下にスクロールして表示する必要があります。高さ100%のDIVは内容がなくても高すぎます

私はHTMLのように、このような何かを持っている:

<div id="body-wrap"> 

    <div id="content"> 

      [about 100px of content here] 

    </div><!-- end #content --> 

<div class="push"></div> 

</div><!-- end #body-wrap --> 

<div id="footer-wrap"> 

    <div id="footer-content"> 

       [about 300px of content here] 

    </div> <!-- end #footer-content --> 

</div> <!-- end #footer-wrap --> 

そして、私のCSS:

html, body { 
height: 100%; 
} 

#body-wrap { 
min-height: 100%; 
height: auto !important; 
height: 100%; 
margin: 0 auto -300px; /* the bottom margin is the negative value of the footer's height */ 
} 

.footer-main-wrap, .push { 
height: 300px; /* .push must be the same height as .footer */ 
} 

誰もが、なぜ100%の高さは内容よりもさらに延長する任意のアイデアがありますか?

+0

十分な長さでない場合、正しく調整あなたはまた、引用符を追加するのを忘れたのでしょうsource?私の答えを準備したときに、閉じ引用符の欠落が原因でレイアウトが違っていた(FF 3.6.22) –

答えて

3

あなたは割合(例えば、height: 100%)と高さを指定すると、それはコンテナ、ない内容要素のに関連しています。 IE6をサポートする必要がない場合は、フッターにposition: fixedを使用して実装する方がはるかに簡単です。


編集:マークアップでは、IDが footer-wrapの要素がありますが、CSSではセレクタ .footer-main-wrapを使用しています。 CSSの .footer-main-wrap#footer-wrapに変更してみてください。あなたの bodyにあなたのhtml と height autoheight 100%を追加

+0

親のdivの高さをとっていることはあなたのことでした。 100%の高さが長すぎるのですが、今ではフッタの下に大きな隙間があるという問題があります... – beowulf

+1

ギャップはどれくらいですか? tは10-15px程度のオーダで、body要素のデフォルトマージンになる可能性があります。 @ Robの答えが役に立つでしょう。すなわち、 'body {margin:0; } 'スタイルシートで。 – jmar777

+0

ボトムギャップは約180ピクセルです。本文を追加する{margin:0; }は何の違いもないようです。 – beowulf

1

はあなたの元に `" `、それはページが

関連する問題