做练习的时候遇到一个margin的问题,代码结构如下,给父元素body中的子元素div设置了margin:50px auto;本来我是想让子元素div距离父元素上边拉开50个像素,结果却是子元素div和父元素body一样高,并且距离上边距50px,如下图(a):

html{

width: 100%;

height: 100%;

background: red;

}

body{

margin: 0;

padding: 0;

width: 100%;

height: 100%;

background:#47c9af;

}

div{

width: 800px;

height: 200px;

margin: 50px auto;

background: yellow;

}

div内容

图(a):

查阅了一些资料,得知这个margin外边距合并的问题,

简单地说,外边距合并指的是,当两个垂直外边距相遇时,它们将形成一个外边距。合并后的外边距的高度等于两个发生合并的外边距的高度中的较大者。你可以查看CSS外边距合并了解这个基本知识。

实际工作中,垂直外边距合并问题常见于第一个子元素的margin-top会顶开父元素与父元素相邻元素的间距,而且只在标准浏览器下(FirfFox、Chrome、Opera、Sarfi)产生问题,IE下反而表现良好。

这个问题发生的原因是根据规范,一个盒子如果没有上补白(padding-top)和上边框(border-top),那么这个盒子的上边距会和其内部文档流中的第一个子元素的上边距重叠。

再说白点就是:父元素的第一个子元素的上边距margin-top如果碰不到有效的border或者padding.就会不断一层一层的找自己的“领导”(父元素,祖先元素)的麻烦。只要给领导设置个有效的 border或者padding就可以有效的管制这个目无领导的margin防止它越级,假传圣旨,把自己的margin当领导的margin执行。

这个问题的解决方案:为父元素增加一个border-top或者padding-top即可解决这个问题。在本例中给父元素body元素修改为如下样式即可:

body{

margin: 0;

padding-top:1px;/*或者border-top:1px solid transform;*/

width: 100%;

height: 100%;

background:#47c9af;

}

修改后的结果如下图(b):此时子元素div与父元素body就正真拉开了

第一次写博客,继续加油!(若发现博文哪里有问题请指正)

margin属性以及垂直外边距重叠问题

盒子的margin属性         盒子的外边距margin 指的是当前盒子与其他盒子之间的距离,环绕在盒子周围的空白区域,属于不可见的区域,,不会影响到可见框的大小,而是会影响到盒子的位置 ...

文本溢出、垂直外边距合并、BFC、hasLayout

今天学习文本溢出,又遇到了一些小问题,先上图: 关于文本溢出推荐:http://www.cnblogs.com/yzg1/p/5089534.html 从里面学习到单行文本和多行文本溢出, overf ...

CSS 垂直外边距合并:规范、延伸、原理、解决办法

第七章基本视觉格式化.p192,提到了 垂直外边距合并 的情况,解释总体算清晰,但是感觉不全且没有归纳成一条一条的,参考 CSS框模型中外边距(margin)折叠图文详 ...

CSS min-height不能解决垂直外边距合并问题

垂直外边距合并有一种情况是嵌套元素的垂直外边距合并,当父级元素没有设定外边距时,在顶部或者底部边缘的子元素的垂直外边距就会和父级的合并,导致父级也有了“隐形”的垂直外边距. 当父级元素的min-hei ...

【css基础】垂直外边距的合并

近期在重温,还是想把基础再打坚固点,如今对垂直外边距的合并问题进行简单总结. 1. 两个块级元素的外边距都大于0时,取那个最大值作为两个块级元素的垂直边距 请看以下一个小 ...

__x__(22)0907第四天__ 垂直外边距重叠

外边距重叠, 也叫“外边距合并”,指的是,当两个外边距相遇时,它们将形成一个外边距. 合并后的外边距的高度,等于两个发生合并的外边距的高度中的较大者...在布局时,易造成混淆. 1. 上下元素 垂直外 ...

margin css的外边距

h2{margin:10px 0;} div{margin:20px 0;} ......

这是一个标题

这是又一 ...

理解CSS外边距margin

前面的话   margin是盒模型几个属性中一个非常特殊的属性.简单举几个例子:只有margin不显示当前元素背景,只有margin可以设置为负值,margin和宽高支持auto,以及margin具有 ...

随机推荐

基于X86平台的PC机通过网络发送一个int(32位)整数的字节顺序

1.字节顺序 字节顺序是指占内存多于一个字节类型的数据在内存中的存放顺序,通常有小端.大端两种字节顺序.小端字节序指低字节数据存放在内存低地址处,高字节数据存放在内存高地址处:大端字节序是高字节数据存 ...

Fluentd 例子

0. 安装.启动 安装 curl -L https://toolbelt.treasuredata.com/sh/install-redhat-td-agent2.sh | sh 更新:最近貌似会安装 ...

unix

BSD (Berkeley Software Distribution,伯克利软件套件)是Unix的衍生系统,在1977至1995年间由加州大学伯克利分校开发和发布的.历史上, BSD曾经被认为是UN ...

shell 括号学习

http://blog.csdn.net/tttyd/article/details/11742241 http://tldp.org/LDP/abs/html/loops1.html

hdu 2481 Toy

好题!!!没话说…… 用到的知识面很多,这题的难点在于公式的推导. 原始推导过程见:http://hi.baidu.com/spellbreaker/item/d8bb3bda5af30be6795d ...

java自定义事件机制分析

import java.util.ArrayList; import java.util.EventListener; import java.util.EventObject; import jav ...

一、JavaScript概述 	二、JavaScript的语法 	三、JavaScript的内置对象

一.JavaScript的概述###<1>JavaScript的概念 又称ECMAScript,和java没有任何关系 嵌入在HTML元素中的 被浏览器解释运行的 一种脚本语言. ###& ...

js需要清楚的内存模型

原型 原型重写 原型继承 组合方式实现继承 函数作用域链

聚焦小游戏技术生态,腾讯游戏云GAME-TECH落地厦门

欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 本文由腾讯游戏云 发表于云+社区专栏 2018迎来了小游戏元年,据<2018年小游戏行业白皮书>显示:2018年小游戏市场规模预 ...

html盒子距离上边距50px,Margin的垂直外边距问题相关推荐

  1. CSS中盒子模型、嵌套盒子中垂直外边距塌陷问题解决方案、标准盒模型、怪异盒模型

    盒子模型(Box Model): 指把HTML页面中的元素看作是一个矩形的盒子,也称容器,这个盒子从内到外由:元素的内容(content).内边距(padding).边框(border).外边距(ma ...

  2. html内边距居中,HTML中详述外边距样式属性(margin)与内边距样式属性(padding)...

    外边距样式属性(margin) 外边距样式属性(margin):设置边框外的距离. 属性:margin-top样式属性,margin-bottom样式属性,margin-left样式属性和margin ...

  3. BFC与垂直外边距折叠笔记

    BFC与垂直外边距折叠 BFC BFC是什么(Block formatting contexts) Boxes in the normal flow belong to a formatting co ...

  4. html盒子距离上边距50px,css中的margin属性

    之前我一直认为margin属性是一个非常简单的属性,但是最近做项目时遇到了一些问题,才发现margin属性还是有一些"坑"的,下面我会介绍margin的基本知识以及那些" ...

  5. CSS设置元素内边距(padding)、外边距(margin)

    设置元素内边距padding 所有的 HTML 元素基本都是以矩形为基础. 每个 HTML 元素周围的矩形空间由三个重要的属性来控制: padding(内边距):它围绕着内容的空间. margin(外 ...

  6. html外边距有哪些,css外边距是什么?css外边距属性的介绍

    在学习css的时候,会css外边距这一概念,所以,css外边距是什么呢?边框以外就是外边距,外边距默认是透明的,因此不会遮挡其后的任何元素,接下来本篇文章将来给大家介绍关于css外边距属性的相关内容. ...

  7. html图片垂直边距,html – 为什么水平边距不会像垂直边距那样崩溃?

    由于管理边际崩溃的规则意味着他们永远无法满足条件,因此水平边距永远不会有崩溃的机会. In CSS, the adjoining margins of two or more boxes (which ...

  8. CSS 之盒子模型——边框、内边距、外边距

    使用width来设置盒子内容区的宽度 使用height来设置盒子内容区的高度 width和height只是设置的盒子内容区的大小,而不是盒子的整个大小,盒子可见框的大小由内容区,内边距和边框共同决定 ...

  9. CSS3day(CSS三大特性,行高的继承,选择器的权重,盒子模型:外边距,边框,内边距)

    文章目录 CSS三大特性:层叠性.继承性.优先级 层叠性 继承性 行高的继承 优先级 优先级权重的叠加 盒子模型: 边框(border) 表格的细线边框 边框会影响盒子的实际大小 内边距(paddin ...

最新文章

  1. 解析:GE工业互联网平台Predix
  2. 如何在php中插入map热点,PHP中使用BigMap实例
  3. hbase的集群搭建
  4. MSVCRTD.lib(crtexew.obj) : error LNK2019: 无法解析的外部符号 _WinMain@16
  5. vs xgb 神经网络_业界 | 深度学习与XGBoost在小数据集上的测评,你怎么看?(附源码)...
  6. CTA策略:主力连续、全合约模式下回测结果的差异探讨
  7. 数据库学生管理系统课程设计
  8. bulk insert java_java oracle bulk insert
  9. 遍地是钱,为什么捡不到?
  10. Android Studio中ListView通过自定义Adapter显示数据3-1
  11. overleaf表格_latex插入表格心得
  12. 储备物资管理局计算机,国考报名税务过审居首 储备物资管理局最抢手
  13. PAT_乙级_1010_筱筱
  14. 支付宝rsa签名 java_支付宝RSA签名
  15. Linux shell 更改为zsh一直shell not changed
  16. windows 安装达梦数据库Python 报错:fatal error C1083: Cannot open include file: ‘DPI.h‘: No such file or direc
  17. 2023年这11种互联网创业项目,让你轻松起步
  18. iOS Returning block that lives on the local stack 错误解决
  19. “猪”事大吉 | 为什么猪是最后一个生肖?
  20. T149基于51单片机4层电梯控制器Proteus设计、keil程序、c语言、源码

热门文章

  1. 霸王级”寒潮来袭 神华国华“智能供热”送温暖
  2. vue的axios两种写法(不知道对不对,仅供参考)
  3. 零基础掌握计算机入门
  4. 每天只需要花10分钟,在西瓜头条,不用拍摄靠声音挣300
  5. ubuntu14.04扩展屏幕后,打开matlab就死机。求大神帮忙解决!!!万分感谢
  6. 招银网络科技Java社招面经
  7. python中语法错误英文提示解析(可能没有解决方案)
  8. flash存储器原理及作用是什么?
  9. solr定时实时重建索引和增量更新——sxt
  10. html 隐藏表格某一行,layui怎么隐藏表格行?