css的盒模型

  1. css盒子模型(box model)

CSS盒模型本质上是一个盒子,封装周围的HTML元素,它包括:边距,边框,填充,和实际内容。

盒模型允许我们在其它元素和周围元素边框之间的空间放置元素。

  1. W3C标准

大多数浏览器采用W3C标准模型

  1. IE标准盒子模型

IE中则采用Microsoft自己的标准

怪异模式是“部分浏览器在支持W3C标准的同时还保留了原来的解析模式”,怪异模式主要表现在IE内核的浏览器

当不对doctype进行定义时,会触发怪异模式

  • 在标准模式下,一个块的总宽度= width + margin(左右) + padding(左右) + border(左右)
  • 在怪异模式下,一个块的总宽度= width + margin(左右)(即width已经包含了padding和border值)

box-sizing : content-box || border-box || inherit;

  • 当设置为box-sizing:content-box时,将采用标准模式解析计算,也是默认模式;
  • 当设置为box-sizing:border-box时,将采用怪异模式解析计算;

当不对doctype进行定义时: 即文件头部 没有申明<!DOCTYPE html>这个,就会导致 怪异模式(如果ie8以下的版本,文档模式就会变为ie5 quirks模式 )

<meta http-equiv="X-UA-Compatible" content="IE=7" />

无论页面是否包含 <!DOCTYPE> 指令,均使用 Windows Internet Explorer 7 的标准渲染模式。

<meta http-equiv="X-UA-Compatible" content="IE=edge"></meta>

<meta charset="utf-8">

1.png
2.png
3.png

设置padding和border,不会影响盒子。

当doctype进行定义时: 即文件头部 申明<!DOCTYPE html>这个,标准模式

4.png
5.png

css3的box-sizing属性

兼容性写法:

这个就是和怪异模式相同的:

box-sizing: border-box;

-moz-box-sizing: border-box;

-webkit-box-sizing: border-box;

-ms-box-sizing: border-box;

应用场景:

1,当一个容器宽度定义为100%之后,如果再增加pading或者border,则会溢出父容器,是向外扩张的。

2,几个不同的li,横向排列的时候,在固定宽度的时候,如果再增加pading或者border,则会导致换行。

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

推荐阅读更多精彩内容

  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 14,680评论 1 92
  • 一个盒子中主要的属性就5个:width、height、padding、border、margin。 width是“...
    博为峰51Code教研组阅读 1,384评论 0 0
  • 盒模型 盒模型的特点: 每个盒子都有:边界、边框、填充、内容四个属性;每个属性都包括四个部分:上、右、下、左;这四...
    xiaolizhenzhen阅读 5,072评论 0 0
  • 课程目标 掌握盒模型相关知识点 了解IE盒模型和W3C 盒模型区别 学习建议 视频未覆盖的知识点会提供详细的文档资...
    饥人谷_江君阅读 3,707评论 0 3
  • 相信每一个人,都希望得到别人的欣赏,得到老板的重视。 事实上呢?可有可无的人实在是太多了,当你是处于这种处境而苦苦...
    周公子聊娱乐阅读 3,698评论 0 6