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

如何将子盒子垂直居中于父盒子?新手可能会想到使用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;样式

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

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

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • CSS中的居中对齐 内容居中对齐:text-align:center 盒子居中对齐:margin:0 auto; ...
  • 本文是针对刚学编程的小白,都是一些基础知识,如果想了解更多深层一点的东西,欢迎移步本人博客!! 博客地址 点击跳转...
    西巴撸阅读 553评论 0 0
  • 选择qi:是表达式 标签选择器 类选择器 属性选择器 继承属性: color,font,text-align,li...
    love2013阅读 2,337评论 0 11
  • 选择qi:是表达式 标签选择器 类选择器 属性选择器 继承属性: color,font,text-align,li...
    wzhiq896阅读 1,805评论 0 2
  • 1. 回到一种既定的节奏中,让人很有安全感。 所以,奔走了这三四天,回到广州,我回到了敏捷个人的节奏中。 2. 讲...
    刘娟娟阅读 231评论 0 4