margin 重叠现象

1、写两个div,在上面div有 margin-bottom 的情况下效果是这样:

<!DOCTYPE html>
<html>
<head>
    <meta charset=" utf-8">
    <title>margin 重叠现象</title>
    <style type="text/css">
    .top {
      height: 100px;
      background: #795f98;
      margin-bottom: 20px;
    }
    .bottom {
      height: 100px;
      background: #7f9140;
    }
    </style>
</head>
<body>
    <div class="dadDiv">
        <div class="top"></div>
        <div class="bottom"></div>
    </div>
</body>
</html>

2、那如果只让下面的div有 margin-top 的情况下是怎样呢?

.top {
  height: 100px;
  background: #795f98;
}
.bottom {
  height: 100px;
  background: #7f9140;
  margin-top: 20px;
}

是的,效果没变。

3、再来,把刚刚的样式都写上呢,两个div会距离得更远么?

.top {
  height: 100px;
  background: #795f98;
  margin-bottom: 20px;
}
.bottom {
  height: 100px;
  background: #7f9140;
  margin-top: 20px;
}

我的答案是 效果还是不变,即两个div上下间距还是20个像素,不信?自己拿尺子测量去吧~

margin 重叠现象

时间: 2024-10-14 14:47:37

margin 重叠现象的相关文章

清除浮动(带来的影响) clear与margin重叠

[CSS][清除浮动(带来的影响) clear与margin重叠] 1.用clear清除浮动(在浮动元素的底加入div且设置clear:both;),会发生margin重叠显现 2.用BFC清除浮动(在浮动元素的父元素上加入overflow: hidden;),则会把整个元素包起来,从而不会发生margin重叠现象 (PS:只有普通文档流中块框的垂直外边距才会发生外边距叠加.行内框.浮动框或绝对定位框之间的外边距不会叠加.) 第一个是使用了"clear:both"但是它会与margin

margin的重叠现象

当两个相邻的普通元素设置margin时,则它们的间距并不是简单的外边距相加. <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>margin的重叠现象</title> </head> <style> #div1{ height: 100px; margin-bottom:50px;

2016/2/25 1, margin auto 垂直方向测试 无效 2,margin重叠 3,哪些是块状哪些是内联 4,display:block inline 导航栏把内联转块状最常见+ 扩展

1.利用margin auto完成首页居中,并自行研究,竖直方向用margin auto,是什么效果#container{width:1002px;margin: 0px auto;}    竖直方向上margin:auto;无效.2.测试margin重叠的发生条件及现象,并自行搜索“父子div”也会发生margin重叠,写出代码及效果图. <!DOCTYPE html> <html> <head> <title>测试父子DIV-margin</tit

CSS 外边距(margin)重叠及防止方法

CSS 外边距(margin)重叠及防止方法 胡俊涛 | 2011-11-17 边界重叠是指两个或多个盒子(可能相邻也可能嵌套)的相邻边界(其间没有任何非空内容.补白.边框)重合在一起而形成一个单一边界. 两个或多个块级盒子的垂直相邻边界会重合.结果的边界宽度是相邻边界宽度中最大的值.如果出现负边界,则在最大的正边界中减去绝对值最大的负边界.如果没有正边界,则从零中减去绝对值最大的负边界.注意:相邻的盒子可能并非是由父子关系或同胞关系的元素生成. 但是边界的重叠也有例外情况: 1.水平边距永远不

CSS 外边距(MARGIN)重叠及防止方法(转载)

边界重叠是指两个或多个盒子(可能相邻也可能嵌套)的相邻边界(其间没有任何非空内容.补白.边框)重合在一起而形成一个单一边界. 两个或多个块级盒子的垂直相邻边界会重合.结果的边界宽度是相邻边界宽度中最大的值.如果出现负边界,则在最大的正边界中减去绝对值最大的负边界.如果没有正边界,则从零中减去绝对值最大的负边界.注意:相邻的盒子可能并非是由父子关系或同胞关系的元素生成.但是边界的重叠也有例外情况: 1.水平边距永远不会重合.2.在规范文档中,2个或以上的块级盒模型相邻的垂直margin会重叠.最终

上下margin重叠传递问题

我发现强迫症真的是我一个大病...每次都非得把所有情况都实验出来不可...BUT!!!!!!!!!悲催的是,这么多情况我根本记不住...还是要在写代码的时候不断出错再排错~受不了自己了!不过还是把这部分总结到这里啦~ 下面的几个部分应该是margin重叠问题的所有情况了: 1.两个普通元素上下的margin会合并为一个margin,哪个大选哪个! 两个浮动元素不会出现margin传递的问题,依然是上面元素的margin-bottom和下面元素的margin-top相加作为两者之间的margin值

BFC与margin重叠

在平时做项目的时候,有些时候会发生margin重叠的现象,但这种情况并不是一直都会发生,那到底什么时候会发生margin重叠呢.在网上搜索了一些资料,大致做了一些整理. 首先,会发生margin重叠的肯定是同一个BFC内的块级元素,例如div.ul等,不是块级元素不会发生重叠.(内联元素是不能设置高.行高.内外边距的,而且内联元素只能容纳文本或者其他内联元素.) 重叠的情况大致可以分为以下几种: 1.当一个元素出现在另一个元素上面时,第一个元素的下外边距与第二个元素的上外边距会发生合并. 2.当

margin塌陷现象

如果两个盒子是包含关系,如果让子盒子在父盒子之内向下平移100px:(margin塌陷现象)解决方案: padding , border , overflow <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>盒子模型</title> <style>/*margin塌陷*/ .box1 { wi

CSS盒模型和margin重叠

在 CSS 中,width 和 height 指的是内容区域的宽度和高度.增加内边距.边框和外边距不会影响内容区域的尺寸,但是会增加元素框的总尺寸.(div的实际占用尺寸变打了) 但: 一旦为页面设置了恰当的 DTD,大多数浏览器都会按照上面的图示来呈现内容.然而 IE 5 和 6 的呈现却是不正确的.根据 W3C 的规范,元素内容占据的空间是由 width 属性设置的,而内容周围的 padding 和 border 值是另外计算的.不幸的是,IE5.X 和 6 在怪异模式中使用自己的非标准模型