为什么这个margin-top会影响父元素?

![本来想子元素离父元素高度margin-top也离50px;结果重叠了。好像父元素下落了50px;直接贴上了子元素

<html>
   <head>
     <meta http-equiv = "Content-Type"  content = "text/html; charset = uft-8">
	 <title>2D动画1</title>
       <style>
			.father{
				margin:0 auto;
				width:960px;
				height:720px;
				background:gray;
				
			}
			.son{
				width:100px;
				height:100px;
				background:red;			
				margin:50px 50px;				
			}			
	   </style>
   </head>
   
   
   <body>
      <div  class = "father">
	    <div class = "son">
			2D旋转
		</div>
	  </div>   
   </body>
</html>

本来想子元素离父元素高度margin-top也离50px;结果重叠了。好像父元素下落了50px;直接贴上了子元素
产生负作用:导致父元素的背景颜色不显示。
解决方案一:在父元素添加border属性.father{border:1px solid white;}
解决方案二:采用消除塌陷
在父元素添加属性 .father{overflow:auto;}

另外附上https://ask.csdn.net/questions/691320同类问题
及其@支付宝加好友偷能量挖 的回答原因介绍
border可以防止margin叠加,没有border上下存在margin(包括子元素)会叠加margin去最大值
精通CSS里面有提到margin叠加
https://img-ask.csdn.net/upload/201806/06/1528279454_125107.png
https://img-ask.csdn.net/upload/201806/06/1528279454_125107.png
https://img-ask.csdn.net/upload/201806/06/1528279460_413003.png

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值