在CSS中外边距合并的塌陷情况该如何处理呢
Admin 2022-08-25 群英技术资讯 453 次浏览
已知两个宽和高均为100px,margin均为20px的div垂直排列,现象如下图所示:
当设置css1的margin-bottom:40px;或者css2的margin-top:40px时,现象如下图所示:
结论:
只有当两个垂直排列的盒子的垂直外边距挨在一起时会产生合并问题,此问题也不需要解决,记住谁的外边距较大就采用谁的外边距就ok了。
水平排列的盒子不存在合并的问题。
下面实验证实:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Document</title> <style> div{ /*抽取两个盒子共同特点的代码*/ width:100px; height: 100px; margin: 20px; float: left; /*左浮动实现盒子水平排列*/ } /*分别设置两个盒子不同的颜色*/ .div1{ background: pink; } .div2{ background:#CCC; } </style> </head> <body> <div class="div1">css1</div> <div class="div2">css2</div> </body> </html>
现象为:
一个宽高均为200px的div1内嵌一个宽高均为100px的div2,当给div2设置margin:30px时,现象为:
此时外面的这个大的div的margin也变成了30px,下面这段解决此问题:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Document</title> <style> .div1{ width: 200px; height: 200px; background: pink; overflow: hidden; /*解决该问题的代码*/
/*border:1px solid black 第二种解决办法:给大div设置一个边框*/
} .div2{ width:100px; height:100px; margin: 30px; background:#CCC; } </style> </head> <body> <div class="div1"> <div class="div2">css</div> </div> </body> </html>
需要在大的div中写入overflow: hidden;这句代码可以理解为让浏览器显示该div的时候检查一下是否有问题,如果有问题,浏览器来解决。第二种解决办法见上面的代码。
最后的现象为:
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
本篇文章给大家带来的内容是关于如何使用html5 canvas实现心电图的移动效果,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。
css怪异盒模型的介绍:1、怪异盒设置的width/height不仅包含了content盒子内容的宽度/高度,还包含了padding和border的宽度/高度。2、一个块的总宽度= width + margin(左右)。
在css中,可以利用“vertical-align”属性设置td元素的文本靠上显示,该属性用于设置元素的垂直对齐方式,当属性的值为“text-top”时,会使文本靠上显示,语法为“td{vertical-align:text-top;}”。
本篇文章带大家一起深入了解一下CSS3中的新特性@layer,希望对大家有所帮助!
本篇文章主要介绍了css实现背景半透明文字不透明的效果示例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008