页面布局笔记记录

问题:子div和父div的margin设置。

 <div class="a"><div class="b"></div></div>当设置.b {margin: 30px auto 0}时,b盒子并没有距离a盒子顶端30px,反而a盒子也被影响离顶端30px。

原因:所有毗邻的两个或更多盒元素的margin将会合并为一个margin共享之。毗邻的定义为:同级或者嵌套的盒元素,并且它们之间没有非空内容、Padding或Border分隔。

方法1:在父DIV的css加上“overflow:hidden;”。(最佳)

方法2:在父DIV的css加上“border:1px solid transparent;”。

方法2:父级设置padding(破坏非空白的折叠条件)

方法3:在父DIV的css加上float或者position:absolute。(浮动或绝对定位不参与margin的折叠)

猜你喜欢

转载自www.cnblogs.com/L-xjco/p/9821504.html