-
-
Notifications
You must be signed in to change notification settings - Fork 3.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[css] 第16天 请描述margin边界叠加是什么及解决方案 #51
Comments
可以使用BFC? |
1,使用padding代替,但是父盒子要减去相应的高度 |
若是相邻块元素垂直外边距的合并,合并之后会取两者中的最大值 |
在格式化文档流里 横向 纵向的margin会发生叠加 取最大值 |
<style>
.b1 {
width: 100px;
height: 100px;
margin-bottom: 30px;
}
// 最终两个 div 的 margin 为 40px,以最大的值为准。
.b2 {
width: 100px;
height: 100px;
margin-bottom: 40px;
}
</style>
<div class="b1"></div>
<div class="b2"></div>
|
b2 应该是margin-top 吧 |
https://www.cnblogs.com/zhangmingze/articles/4664074.html 当两个垂直边界相遇时,它们将形成一个边界。这个边界的高度等于两个发生叠加的边界的高度中的较大者。 |
BFC |
我们要搞清楚是为什么?应该先追求本质然后再来寻求解决之道 今天看来这个特性好像有点bug,历史遗留了。 再后来CSS2.1规范里的BFC规范里有两条:
那么谁是BFC,满足以下几个条件之一:
margin的塌陷,其实就是BFC带来的问题 可以通过触发BFC来解决这个问题: |
在一个BFC下两个元素的margin会重叠 解决方法:
|
margin边界叠加:当两个垂直边界相遇时,它们将形成一个边界,这个边界的高度等于两个发生叠加的边界的高度中的较大者。 |
同一个盒子下的margin会重叠,取最大值 |
定义
解决方案形成BFC
|
和前面bfc基本可以联系到一起 |
当两个垂直边界相遇时,它们将形成一个边界,这个边界的高度等于发生叠加的边界的高度中的较大者 |
margin边界叠加(Margin Collapse)是指在一些特定情况下,相邻的两个或多个元素的外边距会合并(叠加)成一个较大的外边距的现象。这种现象可能会导致布局上的意外效果。 下面是一些常见的触发边界叠加的情况:
解决边界叠加的常见方法包括:
需要根据具体情况选择适合的解决方案来解决边界叠加问题。 |
第16天 请描述margin边界叠加是什么及解决方案
The text was updated successfully, but these errors were encountered: