css盒模型

box-sizing

定义

用于更改用于计算元素宽度和高度的默认的,可以使用此属性来模拟不正确支持CSS盒子模型规范的浏览器的行为

取值范围

/* 关键字 值 */
box-sizing: content-box;
box-sizing: border-box;
/* 全局 值 */
box-sizing: inherit;
box-sizing: initial;
box-sizing: unset;

  • content-box 是默认值。如果你设置一个元素的宽为100px,那么这个元素的内容区会有100px宽,并且任何边框和内边距的宽度都会被增加到最后绘制出来的元素宽度中。

  • border-box 告诉浏览器去理解你设置的边框和内边距的值是包含在width内的。也就是说,如果你将一个元素的width设为100px,那么这100px会包含其它的border和padding,内容区的实际宽度会是width减去border + padding的计算值。大多数情况下这使得我们更容易的去设定一个元素的宽高。

背景图片

content-box: 背景为content+padding+border
border-box: 背景为content+padding

margin合并

  1. 相邻的兄弟姐妹元素
  2. 块级父元素与其第一个/最后一个子元素
  3. 空块元素

块格式化上下文(block formatting context)

定义

块级盒布局出现的区域,也是浮动层元素进行交互的区域

创建方式
  • 根元素或其它包含它的元素
  • 浮动元素 (元素的 float 不是 none)
  • 绝对定位元素 (元素具有position为 absolute 或 fixed)
  • 内联块 (元素具有 display : inline-block)
  • 表格单元格 (元素具有 display: table-cell,HTML表格单元格默认属性)
  • 表格标题 (元素具有 display : table-caption , HTML表格标题默认属性)
  • 具有overflow 且值不是 visible 的块元素,display : flow-root
  • column-span : all 应当总是会创建一个新的格式化上下文,即便具有 column-span: all 的元素并不被包裹在一个多列容器中。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 13,814评论 1 92
  • 盒模型 盒模型的特点: 每个盒子都有:边界、边框、填充、内容四个属性;每个属性都包括四个部分:上、右、下、左;这四...
    xiaolizhenzhen阅读 1,330评论 0 0
  • 题目:谈谈你对css盒模型的认识? 答: 基本概念:padding,margin,border,content 标...
    noyanse阅读 312评论 0 0
  • 晨读留言 事物本身的价值不会因为别人的评价而改变,也就是说要学会重视价值忽略估值!现在家庭教育这块,有的家长对孩子...
    sun清风悠扬阅读 180评论 1 7
  • 马上就到年终了,每到这个时候都有不少小伙伴惆怅又要写年终总结了。今年能不能写的不一样呢?这个当然由你说了算。 我今...
    小团子妈妈阅读 1,115评论 1 11