美文网首页
给子盒子设置margin-top时,会作用于父盒子的解决办法

给子盒子设置margin-top时,会作用于父盒子的解决办法

作者: 傲风大帝狗 | 来源:发表于2018-04-09 21:45 被阅读569次

如何将子盒子垂直居中于父盒子?新手可能会想到使用margin,

但是子盒子设置margin-top后,会作用于父盒子,如图1

.father{ width: 300px; height: 300px; background-color: pink; }

.son{ width: 200px; height: 200px; background-color: orange; margin-top:10px}

图1 

造成这个现象的原因是:

1.当一个元素包含在另一个元素中时(假设没有填充或边框将边界分隔开),它们的顶和/或底边界会发生叠加。

2.只有普通文档流中块框的垂直边界才会发生边界叠加。行内框、浮动框或绝对定位框之间的边界不会叠加。

解决办法如下?

方法一:为父元素设置border

方法二:为父元素添加overflow:hidden;样式

方法三:为父元素或者子元素声明浮动

方法四:为父元素或者子元素声明绝对定位

相关文章

网友评论

      本文标题:给子盒子设置margin-top时,会作用于父盒子的解决办法

      本文链接:https://www.haomeiwen.com/subject/jcjwhftx.html