1

これは生産上の問題ではなく、私が遭遇して疑問に思っていることです。親 div に境界線を追加しない限り、内部 div のマージンは親 div の背景色になりません。したがって、ヘッダー div に境界線を追加しない限り、innerDiv のマージンはヘッダー div の背景を取得しません。

<div id="container">
   <div id="header">
     <div id="innerDiv">Title</div> 
   </div>
   <div id="content" >

     <button>Remove Border</button>
   </div>

   <div id="footer" >
     footer
   </div>

</div>

このフィドルは、うまくいけば私の質問を示しています。 http://jsfiddle.net/eTq2P/6/

親divに境界線が追加されない限り、マージンが親divの背景色にならないのはなぜだろうか。親divの中にマージンが含まれることを期待していました。

4

2 に答える 2

3

境界線を追加すると、#headerに#innerDivが含まれるようになり、#innerDivの場合のサイズに拡大されます。追加することで、境界線なしで同じことを達成できます

#header {overflow: auto;}

参照:CSS:境界線を追加すると、背景色が変更されます(?!)

于 2013-02-13T18:37:36.303 に答える
0

* {box-sizing:border-box;}は大いに役立ちます。

于 2013-02-13T20:07:37.873 に答える