2016-04-28 5 views
0

は、私は、その構造、このようなものですHTMLページを持っている -HTMLページの下部にあるこの余分なスペースを削除するにはどうすればよいですか?

<html> 
    <head>...</head> 
    <body> 
    <div id="header">...</div> 
    <div id="in-body">...</div> 
    <div id="footer">...</div> 
    </body> 
</html> 

私の目的は、それぞれのページの&上から下、で#header & #footer静的を作ることですが、#footer後に残されたいくつかのスペースが常にあります。

私はdiv秒のheight sが100%を与える%を追加する場合、私は全体bodyエリアをカバーすることができ、それでも今でものように私は、height(18 + 75 + 3)% = 96%を使用しています、後に残されたいくつかのスペースがまだあると思いました#footer。このため

CSSは -

html { 
    height: 100%; 
    width: 100%; 
    margin: 0; 
    padding: 0; 
} 

body { 
    height: 97.9%; 
    margin: 8px 8px 0px 8px; 
} 

#header { 
    height: 18%; 
    margin: 0; 
} 

#in-body { 
    height: 75%; 
    margin: 0; 
} 

#footer { 
    height: 3%; 
    margin: 0; 
} 

私はどこにも余分なmarginまたはpaddingがないことをChromeのデベロッパーツールからチェックしました。

私はさらに100%を作るしようとした場合、スクロールバーが表示され、htmlていなくても、(Chromeデベロッパーツールからの)任意の要素に属していないままに、そのスペースは、まだあるが、それはただそこに残っています。

私はすべてhtml-heightをオーバーフローなしで表示したいので、body-height: 97.9%を使用しました。

IE11、Chrome 50、Firefox 46でこれを確認しましたが、これはすべて同じです。

html { overflow: hidden }はIE & Firefoxでは非表示にしますが、Chromeでは非表示にします。

この原因は何ですか?それを削除するためにoverflowを使用する以外の方法はありますか?

私のアプローチが間違っている場合は、私を修正してください。

Hereの完全なコードです。

ありがとうございました。

編集:上記のコードを、それぞれのbg-colorのタグでテストしたところ、うまくいきました。だから、それは問題を引き起こしている私のコードです。お願い助けて。

+0

'ボディ{パディング:0; } '。ボトムの余白は0になりますが、パディングはありません。 –

+0

私が書いたように、これを引き起こしている要素には余分な 'padding'や' margin'はありません。私はそれらのすべてをチェックしました。 – PalashV

+0

実例を追加できますか?あなたはすべての真実を語っているわけではありません。 'html'と' body'タグからパディングとマージンを取り除くと、スペースがなくなります。私は、より多くのコードが矛盾していると思います。問題を再現している動作中のフィドル(例えばstacksnippetsやjsfiddle.net)を共有すると、問題点がわかります。 –

答えて

0

CSS3でcalc()メソッドを使用すると、%とpxを一緒に使用するときに違いがないことを確認できます。

だからあなたの体のクラスが指定できます

body 
{ 
    height: calc(100% - 8px); 
    margin: 8px 8px 0px 8px; 
} 
+0

ありがとうございますが、それは私の問題を解決しません。 – PalashV

+1

これは100%〜8pxであってはなりませんか? – Pete

+1

@Pete Yupは、 '8px'が' 100% 'から削除される' margin-up'に属しているのを引き起こします。 – PalashV

関連する問題