css常见问题:盒模型,外边距合并

盒模型

标准盒模型

IE盒模型

区别:

  • W3C标准盒模型:padding、border所占的空间不在width、height范围内。chrome, ie9+, ie678(添加 doctype) 使用标准盒模型, 宽度= 内容宽度
  • IE的盒模型:width包括content尺寸+padding+border。ie678怪异模式(不添加 doctype)使用 ie 盒模型,宽度=边框+padding+内容宽度
css3新样式box-sizing

box-sizing: content-box;  /*w3c标准盒模型*/
box-sizing: border-box;  /*IE盒模型*/

<div style="height:200px;width:200px;border:solid 10px #333;padding:100px;box-sizing: border-box;"> </div>

外边距合并

外边距合并指的是,当两个垂直外边距相遇时,它们将形成一个外边距。合并后的外边距的高度等于两个发生合并的外边距的高度中的较大者。

外边距合并形式:

xl.png
  • 空元素自身上下边距合并。无border无padding无content的空元素,上下边距分别和相邻元素合并,然后自己的上下边距合并。example
k.png
  • 父子。父元素中不设置padding和border时,父元素和子元素的外边距重合。当只设置子元素的margin-top,父子元素发生外边距合并,整体下移,。example
fz.png

同理,若要子元素居中显示,就需要在父元素中加padding或者border,让父子元素的外边距分离。之后无论是在父元素中通过padding还是在子元素中通过margin都能实现子元素居中显示。

:段落间设置间距,防止合并的方式是,都只设置margin-top

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 13,809评论 1 92
  • 大家好,我是IT修真院的学员,一位正直纯洁善良的web前端程序员 今天给大家分享一下如何理解盒模型? 1.背景介绍...
    宁静森林阅读 2,205评论 0 0
  • 第一部分 HTML&CSS整理答案 1. 什么是HTML5? 答:HTML5是最新的HTML标准。 注意:讲述HT...
    kismetajun阅读 27,748评论 1 45
  • 1. 前言 前端圈有个“梗”:在面试时,问个css的position属性能刷掉一半人,其中不乏工作四五年的同学。在...
    YjWorld阅读 4,543评论 5 15
  • 学会使用CSS选择器熟记CSS样式和外观属性熟练掌握CSS各种选择器熟练掌握CSS各种选择器熟练掌握CSS三种显示...
    七彩小鹿阅读 6,342评论 2 66