CSS边距重叠有什么解决方法?
Admin 2021-10-13 群英技术资讯 741 次浏览
这篇文章给大家分享的是有关CSS边距重叠问题,在使用CSS排版布局时,会发现兄弟或者父子节点设置的上下外边距会发生重叠现象,那么这个重叠的问题要如何解呢?下面我们一起来了解看看。
<style> .out { width: 100%; background-color: pink; } .out>div { height: 100px; width: 100%; background-color: rgb(223, 136, 23); margin: 5px 0 10px; } </style> <section class="out"> <div>11</div> <div>22</div> <div>33</div> </section>
当我们查看整个section的高度时,其实本应该是345px的,由于父子和兄弟的外边距的重叠,会发现高度为320px。那么如何在实际应用中解决这个问题呢?
创建BFC(全程块级格式化上下文)可以解决这个问题,首先明确下BFC的原理
BFC内的元素与外界元素之间互不影响,是一个相对独立的封闭区域;
相邻的BFC之间不会发生垂直边距的重叠,也就是说,想要元素外边距不重叠,就要创建一个BFC区域;
BFC区域不会与浮动元素的box重叠;
BFC在计算高度时,浮动元素也会被算在内;
如何创建BFC?
1.设置overflow属性不为visible;
2.float不为none;
3.position的值不为static或者是relative;
4.display属性为table时;
<style> .out { width: 100%; background-color: pink; overflow: hidden; } .out>div { height: 100px; width: 100%; background-color: rgb(223, 136, 23); margin: 5px 0 10px; /* overflow: hidden; */ float: left; } </style> <section class="out"> <div>11</div> <div>22</div> <div>33</div> </section>
当我们再次查看section的高度的时候,会发现高度已经恢复345px了,同时也证明了BFC计算高度时,会把浮动的子元素的高度也算在内;
关于CSS边距重叠的解决方法就介绍到这,本文代码具有一定的借鉴价值,感兴趣的朋友可以参考学习,希望能对大家有帮助,想要了解更多大家可以关注群英网络其它相关文章。
文本转载自脚本之家
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
这篇文章主要介绍了background-position百分比原理详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
在前端网页开发的时候,我们常会用到一些渐变效果,这样可能让网站页面更美观。如果是直接使用图片渐变效果,那么修改起来是非常不放方便的,而且也不能支持缩放这些,但是使用css渐变就能够解决这样的问题。这篇文章就主要介绍基于Gecko引擎浏览器的CSS渐变效果实现。
这篇文章主要介绍了HTML5中CSS外观属性的相关知识,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,,需要的朋友可以参考下
在css中,可以利用“z-index”属性让元素的层级最高,该属性的作用就是设置元素的堆叠顺序,拥有更高堆叠顺序的元素总是会处于堆叠顺序较低的元素的前面,也就是元素的层级最高,语法为“元素{z-index:number;}”。
本篇文章主要给大家介绍下掌握CSS布局技巧有哪些的内容,横向两列布局(左列固定,右列自适应)可以用四种CSS方式来实现。下文有实例供大家参考,对大家了解操作过程或相关知识有一定的帮助,而且实用性强,希望这篇文章能帮助大家,下面我们一起来了解看看吧。
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008