当前位置:首页 > Css

彻底弄懂CSS盒子模型

happyfhb18年前 (2008-11-30)Css2371
摘要:理解CSS盒子模型 什么是CSS的盒子模式呢?为什么叫它是盒子?先说说我们在网页设计中常听的属性名:内容(content)、填充(padding)、边框(border)、边界(margin), CSS盒子模式都具备这些属性。盒子里由外至里依次是:margin 边距border 边框padding…

理解CSS盒子模型

  什么是CSS的盒子模式呢?为什么叫它是盒子?先说说我们在网页设计中常听的属性名:内容(content)、填充(padding)、边框(border)、边界(margin), CSS盒子模式都具备这些属性。

 

盒子里由外至里依次是:

  • margin 边距
  • border 边框
  • padding 间隙 (也有人称做补丁)
  • content (内容,比如文本,图片等)

CSS 边距属性 (margin) 是用来设置一个元素所占空间的边缘 到相邻元素之间的距离。

CSS 边框属性 (border) 用来设定一个元素的边线。

CSS 间隙属性 (padding) 是用来设置元素内容 到元素边框的距离。

CSS 背景属性指的是 content 和 padding 区域。

中有个重要的概念,

CSS 属性中的 width 和 height 指的 是 content 区域的宽和高。

 

先看下面的css代码:

.box {
width: 200px;
border: 10px solid #99c;
padding: 15px;
margin: 20px;
}

HTML代码:

<p class="box"> 内容 内容 内容 内容 内容 内容 内容 内容 内容 内容 </p>

代码效果:

 

这就是一个盒子。任何HTML元素都可以看作是一个盒子,所以CSS盒子模型可以应用于所有HTML元素(和XHTML元素)。下面的图片能加强你对盒子模型的理解。

 

正如你能看到的,一个盒子由四个独立部分组成,最外面的是边界(margin)总是透明的第二部分是边框(border),边框可以有不同的样式。第三部分是补丁(padding),补丁用来定义内容区域与边框(border)之间的空白。第四部分是内容区域。

背景(Background)就是在边框以内的区域,包括补丁(padding)和内容区域。

当你使用CSS定义你的盒子的width和height时,你定义的并不是内容区域、补丁、边框和边界所占的总区域。实际上你定义的是内容区域的width和height。为了计算盒子所占的区域必须加上padding、border和margin。所以,盒子的总长度为;

左padding +左 border + 左margin+ width +右padding +右 border + 右margin

即上面盒子的总长度为:20px+10px+15px+200px+15px+10px+20px=390px.这意味着上面盒子占390px的水平空间。

盒子的总高度为:

上padding +上border + 上margin+ height +下padding + 下border + 下margin

 

 

 

注意:在IE5和IE5.5浏览器中对盒子的算法不一样,width和height包括了内容区域和padding,也就是说,在IE5和IE5.5浏览器显示的盒子高度和长度会比IE6浏览显示的盒子高度和长度短。现在,IE5和IE5.5浏览器基本上没有人使用了。

 

 

扫描二维码推送至手机访问。

版权声明:本文由海海日记-冯海滨博客发布,如需转载请注明出处。

本文链接:http://www.fenghaibin.com/?id=30

“彻底弄懂CSS盒子模型” 的相关文章

升级到IE8 还是坚持IE7?

       IE8用户越来越多,我一直在使用IE7,觉得还不错,因为目前不是很习惯火狐,所以一直用着以IE7为内核的世界之窗浏览器。我到底该不该升级到IE8呢?我一向都是用最新版的软件的,这问题还真的不好决定。  &n…

css高度自适应

人学习某个东西到一定程度的时候思维就固化了.不懂得变通.今天遇到一个css高度自适应问题 我竟然用 height:100%;真是好搞笑.幸亏志伟兄及时指点.应该是 height:auto;很菜鸟的问题 但是却难了我一天 真是要好好学习了.…

div中英文无法自动换行的解决方法

问题:在一个设定好宽度的div中,当我们输入的中文文字长度超过了设定宽度时,会自动换到下一行。但是,如果输入的是英文字母,那么,无论你div设定宽度为多少,英文字母都是不换行直接在同一行输出,导致div的宽度远远超出设定的大小。原因:这是因为div中,英文字母之间没有空格的话,它会默认认为这是一个英…

CSS/DIV网页设计视频教程

 CSS基础知识与核心概念CSS初探 - CSS基本知识 - 第1课CSS基本语法与核心概念 - CSS基本知识 - 第2课设置丰富的文字效果 - CSS基本知识 - 第…

鼠标放上去点击图片

鼠标放上去点击图片

 鼠标放上去点击图片.rar 非常好的css样式。…

父级div height:auto无效解决办法

一种可能情况因为父div中的div处于浮动状态。浮动是会脱离文档流的,内部两个层就不会局限于父层。所以父层不知道内部的高度。但清理浮动,可以把他们“拉”回来。…

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。