margin,padding之我见
在网页布局中,margin和padding绝对会占很重要的作用,但是在实际的项目中,很多新手前端程序员们往往不能正确的使用它们,导致会出现一些不必要的麻烦,下面是我在前几天的项目中遇到的一些问题,以及个人总结的一些方法,仅供参考。
想比margin,padding则是要乖巧的多,几乎没有让你不省心的地方,我们知道,简单的padding语法有四种:
eg:1.div1{padding:1px;} (表示上下左右的内边距都是1PX)
2.div2{padding:1px 2px}; (上下边距是1PX,左右边距是2px);
3.div3{padding:1px 2px 3px}; 上边距是1px,左右边距是2px,下边距3px;
4.div4{padding:1px 2px 3px 4px}; 依次为上边距1PX,右为2px,下3px,左4px
其实总结就是一句话,从上边距开始,顺时针旋转赋值。其次,需要注意的话,padding没有负值,及时你给定值为负,也会当0处理。
margin情况要比Padding复杂一些,语法也和Padding一样,但是需要注意的主要有下面几个地方:
1.margin是允许负边距的,这在做一些叠加效果或是处理inline-block留白的时候很好用。
2.margin的外边距合并只存在垂直方向上。
3.行内元素只有左右两边的margin值,但须记住非可置换元素如img,textarea,select,button.,label,object也是可以设置垂直方向的margin的。
4.有一些情况垂直方向上的margin是不会合并的,比如:1.绝对定位元素不会与任何元素的外边距合并;2.浮动元素不会与任何元素的外边距合并;
3.inline-block不会与任何元素的外边距合并。
4.overflow取值为visible以外的元素与它的子元素不会合并
5.处理塌陷时的几种方法(一个盒子如果没有上补白和上边框,那么这个盒子的上边距会和哎内部文档流中的第一个子元素的上边距重叠,设置子元素margin-top,就会产生塌陷)。
1.给父元素加overflow:hidden;
2.设置父元素或子元素浮动;
3.给父元素加绝对定位;
4.父元素加padding或border;
5.将margin-top改为padding-top;
最后总结一下,在网页开发中,margin和padding都是经常使用的,那么我们应该何时用padding呢:1.希望在border内侧加空白时。2.空白需背景色时。3.上下两个盒子的空白,希望等于两者之和时。如果情况与上诉三种相反,那么我们不妨试试margin这个万能的东东吧!
margin,padding之我见的更多相关文章
- 巧用margin/padding的百分比值实现高度自适应(多用于占位,避免闪烁)
本文依赖于一个基础却又容易混淆的css知识点:当margin/padding取形式为百分比的值时,无论是left/right,还是top/bottom,都是以父元素的width为参照物的!也许你会说, ...
- css007 margin padding border
css007 margin padding border 1.理解盒模型(盒模型:就是把一些东西,包括html各种标签都包含在一个 看不见的盒子里) 1/在web浏览器中任何标签都是一个盒子,内容的周 ...
- css之margin && padding讲解
margin && padding盒子模型: margin是模块与模块的空隙,padding是内容与边框的空隙 注: 1.margin:边缘.空白 2.padding:填充 margi ...
- 总结那些有默认margin,padding值的html标签
一.h1~h6标签:有默认margin(top,bottom且相同)值,没有默认padding值. 在chrome中:16,15,14,16,17,19; 在firefox中:16,15,14,16, ...
- 关于margin padding
margin padding设置百分比是以父元素的宽度作参考. 定位的left,top等取百分比 则以参照定位元素的padding+width做参考 margin 四个同时设定 以margin-lef ...
- 内联/块级元素的宽高及margin/padding的说明 |||||| 为何img、input等内联元素可以设置宽、高
1,内联非替换元素设置宽高是无效的,设置margin时,左右有效,上下无效.设置padding时,左右有效,而上下padding比较奇葩,内联非替换元素的上下padding会在元素内容盒不动的情况下上 ...
- 巧用margin/padding的百分比值实现高度自适应
原文:https://segmentfault.com/a/1190000004231995 一个基础却又容易混淆的css知识点 本文依赖于一个基础却又容易混淆的css知识点:当margin/padd ...
- css 行内元素 块元素 替换元素 非替换元素 以及这些元素的width height margin padding 特性
一.各种元素的width height margin padding 特性(具体css元素的分来参看二) 1.块级元素 width. height. margin的四个方向. padding的四个方向 ...
- html标签默认属性值之margin;padding值
一.h1~h6标签:有默认margin(top,bottom且相同)值,没有默认padding值. 在chrome中:16,15,14,16,17,19; 在firefox中:16,15,14,16, ...
随机推荐
- htmlcss笔记--定位
1.定位: position:relative(相对) 不影响元素本身的特性: 不使元素推理原来文档流:还占有所在的位子. 定位元素控制:top/right/bottom/left 定位元素偏移量. ...
- uvalive 4119 Always an Interger
差分数列+字符串处理 题意:是让你判断一个整系数多项式的值是否一直都能被一个所给的正整数所整除. 通过对差分数列的不断求导,我们可以发现,对于任意多项式P,我们只需要判断n从1到k+1是否满足就行了, ...
- Cppcheck代码分析(2)
功能 解析函数中的可能的代码执行流 函数实际执行中只会执行代码流中的一条流 分析: 分支语句 if-else ,switch-case 循环语句 while, do-while ,for 代码流举例 ...
- centos7 rabbitmq系统部署
CentOS7 1.安装系统 基础设施服务器:Java平台.Linux远程管理.开发工具 2.打开网络连接: (1)cd /etc/sysconfig/network-scripts/ #进入网络 ...
- algorithm@ 大素数判定和大整数质因数分解
#include<stdio.h> #include<string.h> #include<stdlib.h> #include<time.h> #in ...
- tomcat6-7配置管理用户
tomcat6: <?xml version='1.0' encoding='utf-8'?> <tomcat-users> <role rolename=" ...
- 总结2015搭建日志,监控,ci,前端路由,数据平台,画的图与界面 - hugo - ITeye技术网站
总结2015搭建日志,监控,ci,前端路由,数据平台,画的图与界面 - hugo - ITeye技术网站 极分享:高质分享+专业互助=没有难做的软件+没有不得已的加班 极分享:高质分享+专业互助=没有 ...
- [OC Foundation框架 - 6] NSMutableString
NSString是不可变的 NSMutableString是可变字符串 1.初始化 2.串联字符串 3.替换字符串 4.插入字符串 5.删除字符串 #pragma mark buffer st ...
- Linux就是这个范儿之第一次亲密接触(3)
原创作品,允许转载,转载时请务必以超链接形式标明文章原始出处 .作者信息和本声明.否则将追究法律责 1.4 返璞归真的命令行 有一种说法,现代计算机不是靠电力驱动,而是靠“鼠标”.多少应用程序的界面需 ...
- HTML5随笔
1 首先介绍一下html5,以及为什么用html5, HTML5是HTML最新的修订版本,2014年10月由万维网联盟(W3C)完成标准制定. HTML5的设计目的是为了在移动设备上支持多媒体.HTM ...