CSS(marginが親要素に影響)
897 ワード
この問題は
In this specification, the expression collapsing margins means that adjoining margins (no non-empty content, padding or border areas or clearance separate them) of two or more boxes (which may be next to one another or nested) combine to form a single margin.
隣接する2つ以上のボックス要素のすべてのmarginは、1つのmarginとして共有されます.隣接する定義は、兄弟またはネストされたボックス要素であり、それらの間に空でないコンテンツ、PaddingまたはBorder区切りはありません.
それが原因です.「ネスト」のボックス要素も「隣接」であり、Collapsing Marginsでもあります.
この問題の回避方法は多く、現れた条件を破壊すればいい.
詳細については、異なる値の関連リンク: Collapsing margins
CSS2.1
のボックスモデルに規定されている内容です.Collapsing margins
:In this specification, the expression collapsing margins means that adjoining margins (no non-empty content, padding or border areas or clearance separate them) of two or more boxes (which may be next to one another or nested) combine to form a single margin.
隣接する2つ以上のボックス要素のすべてのmarginは、1つのmarginとして共有されます.隣接する定義は、兄弟またはネストされたボックス要素であり、それらの間に空でないコンテンツ、PaddingまたはBorder区切りはありません.
それが原因です.「ネスト」のボックス要素も「隣接」であり、Collapsing Marginsでもあります.
この問題の回避方法は多く、現れた条件を破壊すればいい.
Outer Div
にpadding/border
を加えるか、またはOuter Div / Inner Div
にfloat/position:absolute
に設定する(CSS2.1
は、フローティング要素および絶対位置決め要素がmargin
の折り畳みに関与しないことを規定する).詳細については、異なる値の
margin
を折り畳んだ後の表現の計算方法などについて、自分で調べることができます.