2011-09-12 12 views
2

幅100%に設定されたdivがあります。 20pxの左右に余白を設定したいと思っていました。何らかの理由で左だけが20ピクセル以上押し込まれています。右を無視します。これは100%のためですか?左右に余白100%

答えて

7

幅を削除します。すべてのブロック要素と同様に、divは自動的に利用可能な幅を埋めるように拡張されます。 100%の幅を指定すると、コンテナと同じサイズになるように指定され、使用可能な幅を埋めることはありません。幅に余白が含まれていないので、幅に加えて余白を指定すると、divが左余白分だけ右にシフトされ、右余白が画面外に存在します。

+0

すばらしい説明!ありがとうございました –

1

100%を削除してください。それに20px marginとしてください。

5

全く愚かではありません。何が起こっていることは、あなたがこのようにややバナーを設定しようとしているです: (#はマージン)

========== 
#--------# 
========== 

が、それはこのように終わる:それはこのようになり作る

========== 
#----------# 
========== 

========== 
#--------- 
========== 

余白を追加しても、設定幅は100%に縮小されません。

あなたが left:20px; right:20px;を使用して試してみて、幅とマージン auto

EDIT
か、単に他の人のように幅をオフのままを残すかもしれないが示唆されています。 :P

+0

OPのケースで実際に何が起こったかの貴重な説明。 – Matijs

0

divは、フローティングを開始しない限り、使用可能なすべての領域を使用します。 widthを削除してください。

関連する問題