让新手琢磨不透的(margin:外边距)and(padding:外边距)这两个属性

学过盒子模型的同学都应当知道(margin和padding)这两个用于盒子模型的两个重要属性吧。其实一开始我也不太明白这两个属性到底在什么时候用margin和padding,相比有许多小伙伴不知道什么时候用margin和padding处于这种尴尬情况。接下来让我逐步让你理解!

1,盒子模型基础概念

盒子模型是样式表(css)控制页面的很重要的概念。所有的页面的元素都可以看成是一个盒子,占据一定的页面空间。占据的空间要比实际使用的空间要大得多。我们可以调整盒子的边框和距离,来调整盒子(页面和页面中的元素)的位置。盒子模型是由内容、边框、间隙(padding)、间隔(margin)组成,他们的关系如下图所示:

盒子实际宽度(高度)=内容(content)+边框(border)+间隙(padding)+间隔(margin)。对于任何一个元素设置width和height控制内容大小,也可以分别设置各自的边框(border)、间隙(padding)、间隔(margin)。灵活设置这些盒子的这些属性,可以实现各自排班效果。

2.border边框

border是元素的外围,就是整个div的边框。border有三个主要属性,color(颜色)、width(粗细)和style(样式)

1、color主要是指定border的颜色,一共有256的3次方种颜色供我们选择。通常是16进制的值,比如红色是“#FF0000”。

2、width是border粗细程度,可以设置为thin、thick和length,length为具体数值,比如说border:1px #CCC solid;其中1px指的是border的width,默认值是medium,一般浏览器解析为2像素。

3、style属性可以设为none、hidden、dotted、dashed、solid、double、groove、ridge、inset和outset等,其中none和hodden是不显示border,hidden可以用来解决边框的冲突问题。对于groove、inset、outset、rigde、border-style,IE会出现兼容问题,使用时一定要注意。

3.padding内边框

padding内边距用于控制content与border之间的距离,同时设置上下左右的padding时,可以这样写padding:10px 20px 10px 10px;分别对应上、右、下、左四个方向的padding,逆时针排序,margin属性也可以这样书写。
同时它也可以用*(padding-left右内边距 padding-right 左内边距 padding-top 上内边距 padding-bottom下内边距)*四个属性可以设置单一的也可以设置重叠的padding属性。

margin外边距

margin外边距用于控制块与块(可以理解成块级元素)之间的距离。为了便于理解可以把盒子模型想象成一幅画,content是画本身,padding是画与画框的留白,border是画框,margin是画与画之间距离。(margin-left右内边距 margin-right 左内边距 margin-top 上内边距 margin-bottom下内边距)*四个属性可以设置单一的也可以设置重叠的margin属性
需要注意的是IE和firefox在处理margin时有一些差别,倘若设定了父元素的高度height值,如果此时子元素的高度超过了父元素的height值,二则显示结果完全不同,IE浏览器会自动扩大,而firefox(火狐浏览器)就不会,这一点是需要注意的。

padding和margin两者之间的区别

我们以DIV为一个盒子为例,既然和现实生活中的盒子一样,那我们想一下,生活中的盒子内部是不是空的好用来存放东西,而里面存放东西的区域我们给他起个名字叫“content(内容)”,而盒子的纸壁给他起个名字叫“border(边框)”,如果盒子内部的东西比如是一块硬盘,但是硬盘怕震动,所以我们需要在硬盘的四周盒子的内部均匀填充一些防震材料,这时硬盘和盒子的边框就有了一定的距离了,我们称这部分距离叫“padding(内边距)”,如果我们需要购买许多块硬盘,还是因为硬盘怕震动所以需要在盒子和盒子之间也需要一些防震材料来填充,那么盒子和盒子之间的距离我们称之为"margin(外边距)"

用margin好还是用padding好

什么时候要用margin呢!

需要在border外侧添加空白时。

空白处不需要背景(色)时。

上下相连的两个盒子之间的空白,需要相互抵消时。如15px + 20px的margin,将得到20px的空白。

什么时候要用padding呢!

需要在border内测添加空白时。

空白处需要背景(色)时。

上下相连的两个盒子之间的空白,希望等于两者之和时。如15px + 20px的padding,将得到35px的空白。

margin在块级元素时

margin在块级元素下,他的性能可以完全体现,上下左右任你设定.

margin在行级元素时

margin也能用于内联元素,这是规范所允许的,但是margin-top和margin-bottom对内联元素(对行)的高度没有影响,并且由于边界效果(margin效果)是透明的,他也没有任何的视觉影响。

小编自身感受

这下各位小伙伴们理解了盒子模型里的 border、margin、padding这三种属性了吧
其实margin和padding就是画框和画的留边就是连个概念 以后大家不要轻易搞混哦!
小编是明白了你呢?

关于标准盒子模型的(border、 margin和padding)属性的讲解相关推荐

  1. CSS盒子模型(border、padding、margin、圆角边框、盒子阴影、文字阴影、新闻列表综合案例、新浪导航栏案例)

    1. 网页布局的本质 首先利用CSS设置好盒子的大小,然后摆放盒子的位置. 最后把网页元素比如文字图片等等,放入盒子里面. 以上两步 就是网页布局的本质 2. 盒子模型(Box Model) 盒子模型 ...

  2. 标准盒子模型和怪异盒子模型(详解)

    一.盒子模型定义 盒子模型是css技术所使用的一种思维模型.盒子模型是指将网页设计页面中的内容元素看作一个个装了东西的矩形盒子.每个矩形盒子都由内容.内边距.边框和外边距4个部分组成.除去内容部分,其 ...

  3. CSS中的标准盒子模型和怪异盒子模型

    一.什么是盒子模型(Box Model) 盒子想必大家都是知道的吧! 生活中我们的快递有盒子包装着,买的蛋糕也是有盒子包装着,我们的礼品也是被盒子包装着. 模型是什么呢? 它是主观意识借助实体或者虚拟 ...

  4. 前端基础(八)_盒子模型(标准盒子模型和怪异盒子模型)

    盒子模型 什么是盒子模型 网页设计中常听的属性名:内容(content).内边距(padding).边框(border).外边距(margin), CSS盒子模型都具备这些属性.这些属性我们可以用日常 ...

  5. 【什么是盒模型】标准盒子模型、怪异盒子模型

    一.上图 标准盒子模型 和IE盒子模型 什么是盒子模型 CSS盒子模型(Box model)就是在网页设计中经常用到的CSS技术所使用的一种思维模型.网页中所有元素都具备以下四个属性: 内容(cont ...

  6. CSS 盒子模型(border、padding、margin)

    CSS盒子模型 Css盒子模型本质上是一个盒子,封装周围的html元素,他包括边框.内容.外边距.内边距. 1.边框 边框(border)可以设置元素的边框,他由三部分组成:边框宽度(粗细).边框样式 ...

  7. 标准盒子模型与怪异盒子模型

    通俗的讲,盒模型是css布局的基础,它的作用是规定了网页元素在网页上如何显示以及元素之间的相互关系,css定义所有的元素都可以拥有像盒子一样的外形和平面空间.即都包含内容区.补白(填充).边框.边界( ...

  8. box-shadow属性四个值_重学前端:什么是盒子模型?标准盒子模型有哪些属性和尺寸计算?...

    盒模型 盒子模型是网页布局的基石.它有边框.外边距.内边距.内容组成. 盒子由上到下依次分为五层,它们自上而下的顺序是: border 边框 content + padding 内容与内边距 back ...

  9. 11.前端笔记-CSS盒子模型-外边距margin

    1.margin 1.1 margin的语法 盒子与盒子之间的距离 <!DOCTYPE html> <html lang="en"> <head> ...

最新文章

  1. 我了解到的新知识之——电热水器用电安全
  2. 独家 | 决策树VS随机森林——应该使用哪种算法?(附代码链接)
  3. visual studio 2010 professional , premium, ultimate各版本功能对比
  4. 毕业设计 基于python的网络爬虫-基于python的网络爬虫
  5. latex强调/重音符号
  6. WinForm 窗体之间交互的一些方法-兼托管事件
  7. 怎样根据字段域查找到其在数据库中关系与属性
  8. 云通讯短信验证码实例
  9. django 模板两次for循环_Django模板之基本的 for 循环 和 List内容的显示方式
  10. 年底促销海报还没准备好?电商美工看这里
  11. Windows Workflow Foundation开发环境配置
  12. python动图自动识别,自动识别图像中的模式
  13. 2019年度YC全美路演,来看出色项目的全解析!
  14. (转载)人工智能在围棋程序中的应用——复旦大学附属中学(施遥)
  15. 互联网周刊_11年第15期(115网盘下载)
  16. linux下通过ping命令监控网络抖动脚本
  17. ToolB不能用了,这里有完美替代
  18. JAVA 通过属性名称 获取属性值、设置属性值
  19. Java业务系统是怎么和MySQL交互的?
  20. 计算机学报在线阅读,基于聚类分析的进程拓扑映射优化-计算机学报.pdf

热门文章

  1. 大数据技术在电商的应用
  2. Tomcat:eclipse首选项中没有tomcat?
  3. 初学编程该如何选择编程语言?
  4. 咕咚要和keep们刚正面,闪电战还是持久战?
  5. 怎样才算是婚姻般配?
  6. Python操作Excel的Xlwings教程(八)——Excel使用VBA调用Python
  7. 【校园招聘】广州百田
  8. laradock一些坑(长期维护)
  9. 测试工程师前途-(工资待遇、发展方向探讨)
  10. Android的数据存储之一------SharedPreferences