2017-11-17 3 views
0

最大幅とフッターを持つページを作成し、ウィンドウのサイズが大きい場合はページの主要部分を設定する余白を灰色に設定します。最大幅。また、私は底に固定フッターを持っています。CSSでmax-widthを使用するときに灰色の余白を作成する方法

メインコンテンツの色を白に設定し、余白を設定します。これは、メインディビジョンの高さがフッタにすべてのスペースを占める場合を除き、次にこの未使用領域には大きなグレーのブロックがあります。

メインのdivがすべてのスペースを占めるかどうかにかかわらず、目標は1024pxを超えるスペースの灰色の余白です。ここで

は私が持っているものです。これを与え

<style> 
body { 
    background-color: gray; 
    max-width:800px; 
    margin: 0 auto; 
} 
#main { 
    background-color: white; 
} 
#footer { 
    text-align: center; 
    max-width: 800px; 
    background-color: white; 
    position: fixed; 
    bottom: 0px; 
    width: 100%; 
    margin: 0 auto; 
} 
</style> 
<div id='main'> 
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec mattis tortor a nisl rhoncus, vitae aliquet lectus sodales. 
</div> 
<div id="footer">Footer Goes Here</div> 

。 #mainと#footerの間のグレーを確認できます Problem illustration

お勧めはありますか?

+0

コンテナ要素を作成して、背景が白で、中央に配置することができますか? – jhpratt

答えて

0

私があなたの要件をはっきりと理解していれば、width800pxより大きい場合は、メインコンテンツの左右に灰色の余白が残ることを望みます。メインコンテンツの適切な高さを設定する必要があります。 viewportの高さを計算し、主要コンテンツの高さとして設定します。以下のコードまたはjsfiddle exampleを確認してください。

body { 
 
    background-color: gray; 
 
    max-width:800px; 
 
    margin: 0 auto; 
 
} 
 
#main { 
 
    background-color: white; 
 
    height: calc(100vh - 50px); 
 
} 
 
#footer { 
 
    text-align: center; 
 
    max-width: 800px; 
 
    background-color: white; 
 
    position: fixed; 
 
    bottom: 0px; 
 
    width: 100%; 
 
    margin: 0 auto; 
 
    height:50px; 
 
}
<div id='main'> 
 
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec mattis tortor a nisl rhoncus, vitae aliquet lectus sodales. 
 
</div> 
 
<div id="footer">Footer Goes Here</div>

あなたのフッターの高さを変更し、それに応じてメインコンテンツのheight計算で値を変更したい場合があります。私はそれを例えば50pxに設定しました。

これをテストするには、ブラウザウィンドウのサイズを変更して灰色のマージンを表示してください(jsfiddleのブラウザセクションもそこでテストしたい場合はサイズ変更可能です)。

注 - もpxのヘッダの高さを持っている場合はは、あなたもメインコンテンツheight計算にその値を含める必要があります。

+0

私は本当にあなたの答えが好きですが、私はCSS3のcalc機能を知らなかったのですが、それは私がそれを使用することに限界があることを心配していました。私はこの懸念に関するあなたの考えに興味があります。 –

+0

ビューポート機能が応答します。あなたはもう一度考えなくてもそれを使うことができます。これは、異なる解像度の携帯端末でコードを試しても機能します。参考になった場合は回答を受け入れてください。 – MAC

+0

この機能を使用する前に自信を持って確認するには、https://developer.mozilla.org/en-US/docs/Web/CSS/calcおよびhttps://stackoverflow.com/q/21624014/5465632のリンクを参照してください。 – MAC

関連する問題