1.margin是什么?

margin用于控制元素周围空间的间隔,从视觉上达到空间间隔的目的。相对于前一个元素有相应的外边距。用于隔开元素与元素的。始终是透明的。

2.外边距的合并问题(参见w3school)---前提:元素出于文档流中

2.1 两个垂直外边距相遇时,在垂直方向上会发生外边距的叠加,最终的外边距等于二者的较大值;

2.2 当一个元素(没有边框和内边距)包含另外一个元素时,将在垂直方向上发生叠加;

2.3 当一个元素为空元素时(且没有外边距和),自身会发生外边距的叠加

3.margin在块元素和行内元素中的区别

margin在块元素中会影响块元素的上下左右,可以随意控制;而在内联元素中则只会对水平方向上的元素起到左右。

备注:可置换的内联元素,例如img、input、textarea、select、button、label等,可以控制其width、height,变现为display:inline-block。所以margin也可以实现上下左右的控制。

4.跟margin有关的常见bug

4.1 IE6 双边距问题

问题描述:当父元素中包含的第一个元素为浮动元素,会出现双边距的问题;

解决办法: display:inline

4.2 iIE6浮动元素3px间隔

问题描述:一个浮动元素,另外一个为非浮动元素,则非浮动元素与浮动元素之间存在3px的间隔

5.padding与margin的区别

padding位于边框的内部,具有背景的颜色,主要用于隔开内容与元素;而margin位于边框的外部,不具有背景颜色,主要用于区分元素与元素,起到隔离的作用。

6.margin的负边距问题(待续)

使用margin的负边距可以解决很多问题。

参考资料

http://www.hicss.net/do-not-tell-me-you-understand-margin/

http://www.planabc.net/2007/03/18/css_attribute_margin/

转载于:https://www.cnblogs.com/shamoguying1140/archive/2013/04/28/3049611.html

谈谈对margin的理解相关推荐

  1. C语言margin的作用是,谈谈对margin的理解

    1.margin是什么? margin用于控制元素周围空间的间隔,从视觉上达到空间间隔的目的.相对于前一个元素有相应的外边距.用于隔开元素与元素的.始终是透明的. 2.外边距的合并问题(参见w3sch ...

  2. CSS中关于margin的理解误区

    思考一 在以前,我对于margin的理解是这样的,此处用margin-top举例:指的是离相邻元素之间的距离. 但是实际是:相对于自身原来的位置偏移. 举个例子: <!DOCTYPE HTML ...

  3. Java面试之谈谈对Volatile的理解

    谈谈对Volatile的理解 Volatile在日常的单线程环境是应用不到的 Volatile是Java虚拟机提供的轻量级的同步机制(三大特性) 保证可见性 不保证原子性 禁止指令重排 可能这么说,还 ...

  4. 谈谈对MVVM的理解

    谈谈对MVVM的理解 什么是MVVM 不管是MVC,MVP,或者MVVM,都是常见的软件架构设计模式(Architectural Pattern),它通过分离关注点来改进代码的组织方式.不同于设计模式 ...

  5. 谈谈对this的理解

    谈谈对this的理解 什么是this 每个函数在被调用时都会创建一个执行上下文,这个上下文包含了变量环境.this.作用域链等,this就是执行上下文中的一个属性,他是在函数运行时进行绑定的,this ...

  6. 什么是面向对象?谈谈对面向对象的理解?

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 一.什么是面向对象?谈谈对面向对象的理解? 二.3大特征: 1.封装: 2.继承: 2.多态: 总结 一.什么是面向对象?谈 ...

  7. jvm对于java的意义_谈谈对JVM的理解

    JVM可谓是学习JAVA基础中的基础了,但仍有不少同学对JVM概念还是比较模糊,甚至没有听说过,对java的理解也只是在基础语法 层面,本文就将对JVM进行初步介绍,因篇幅所限,只能介绍JVM基础,如 ...

  8. 谈谈对springioc的理解

    https://www.cnblogs.com/xdp-gacl/p/4249939.html 转载 学习过Spring框架的人一定都会听过Spring的IoC(控制反转) .DI(依赖注入)这两个概 ...

  9. 读Java核心技术36讲有感——谈谈对Java的理解,谈谈Exception和Error

    读过杨晓峰老师的36讲之后,想总结下自己的感想,写下来也有助于记忆,方便以后面试查阅和复习.题目所提到的话题本来是两讲,但是由于感想篇幅较短,所以合成一篇来写. 一.谈谈对Java平台的理解: 1.J ...

  10. 谈谈对python的理解_浅谈对python pandas中 inplace 参数的理解

    这篇文章主要介绍了对python pandas中 inplace 参数的理解,具有很好的参考价值,希望对大家有所帮助.一起跟随小编过来看看吧 pandas 中 inplace 参数在很多函数中都会有, ...

最新文章

  1. Styling with the DataGridColumnStyle
  2. centos把mysql移到数据盘_Centos转移Mysql的数据位置
  3. 组策略     之   恢复默认组策略对象命令
  4. 《Java从入门到放弃》JavaSE入门篇:文件操作
  5. mongodb检查点_Mongodb 日志原理和操作
  6. HDOJ 2526 HDU 2526 浪漫手机 ACM 2526 IN HDU
  7. C++设计模式-使用Qt框架模拟策略模式(Strategy)商场促销
  8. springboot security 安全
  9. python写鼠标宏_最全Pycharm教程(24)——Pycharm编辑器功能之宏定义
  10. 适合初学者的大数据学习路线
  11. Java通过cad图生成3d模型,将CAD图纸转换为SolidWorks三维模型
  12. idea安装阿里巴巴Java开发规范插件
  13. 洛谷4173(fft带通配符字符串匹配)
  14. vue-nuxt-ssr 做谷歌,百度统计以及google,facebook埋点总结
  15. 病毒RNA提取:EpiQuik 病毒RNA提取纯化试剂盒方案
  16. 计算机毕业设计ssm+vue基本微信小程序的“香草屋”饮料奶茶点单小程序
  17. 西门子1200PLC的MODBUS_RTU轮询程序
  18. linux常用命令 yum service ps
  19. 【目标规划】暑假计划
  20. MongoDB教程(一):MongoDB云服务免费开通

热门文章

  1. kafka--Struct Streaming--kafka案例
  2. 2017年上半年软件设计师试题-04
  3. 我的前端面试日记(一)
  4. CentOS6.5下安装mfs分布式存储(转)
  5. 自定义弹框,点击提示框外空白区域,让弹框消失
  6. QT开发pjsip的VOIP,A8平台运行
  7. onvif协议规范与版本简介
  8. 10个免费域名转发地址 无广告 无需要注册
  9. Ubuntu开启root账户ssh远程登录
  10. 数据库连接池 C3p0