关于margin、padding 对内联元素的影响

内联元素和块级元素的区别是新手必须要掌握的知识点。大家可能平时注意块级元素比较多。所以这里重点让我们来讲讲常见的width height margin  padding 对inline元素的影响。

测试代码(在谷歌浏览器运行版本 49.0.2623.87 m,火狐效果同谷歌)

 1     <style type="text/css">
 2     * {
 3         margin: 0;
 4         padding: 0;
 5
 6     }
 7     body{
 8         font-size: 12px;
 9         font-family: "微软雅黑";
10     }
11     span{
12         width:500px;
13         height: 500px;
14         border: 1px solid red;
15         background: yellow;
16         margin-top:10px;
17         margin-bottom: 10px;
18         margin-left:10px;
19         margin-right:10px;
20         padding-top:100px;
21         padding-bottom: 100px;
22         padding-left:10px;
23         padding-right:10px;
24         box-sizing:border-box;
25     }
26     div{
27         color:orange;
28         background: blue;
29         height: 100px;
30     }
31     </style>
32 </head>
33
34 <body>
35     <div>蓝色区域的我是div 蓝色区域的我是div 蓝色区域的我是div</div>
36     <span>i am inline box</span>
37 </body>

inline:  

width和height 可以看成物理属性,对内联元素没有影响。  能够影响它宽高的为其本身的内容。

margin-top:10px;margin-bottom: 10px;无效果

margin-left和margin-right;起作用。

padding属性就比较特别了。

padding-left;padding-right同样有效果,与块元素效果相同。

padding-top和padding-bottom不会影响它的高度,但是会影响他的背景高度。

单个inline元素样式(隐藏了上方的div)

上方加入块级元素div后的样式

block

块元素就没什么好说了。

width,heigth对其产生影响。

块元素实际宽度 = width+padding-left+padding-right+border(没有设置box-size的情况下)

注意

1.css3中box-size属性的的出现对块元素的实际宽度的影响。(ps.这是个好工具)

2.虽然对于inline元素 margin-top之类的没有影响但是在谷歌和火狐的调试器中的布局中仍然是有显示的。

关于ie(这里只测试了 ie7-ie9)

1.仅在ie7中  inlinede的padding 属性没有作用。如图

2.仅在ie9中,开发工具中的布局图,显示的宽高为css中设置的width,height值,而不是内联元素本身的值。在调试中要注意。如图

时间: 2024-10-14 09:24:24

关于margin、padding 对内联元素的影响的相关文章

margin折叠-从子元素margin-top影响父元素引出的问题

正在做一个手机端电商项目,顶部导航栈的布局是一个div包含一个子div,如果给在正常文档流中的子div一个垂直margin-top,神奇的现象出现了,两父子元素的边距没变,但父div跟着一起往下走了! html代码: <div id="fatherbox"> <div id="childbox">首页 </div> </div> css样式: #fatherbox{width:100%,height:64px;back

浅谈内联元素inline

今天主要对inline元素做一下归纳总结. inline是display中的默认属性值,就是将元素设置为内联元素,设置完后元素前后都没有换行符,因此内联元素与前后的元素在一行上. 关于内联元素的特点归纳如下: 1.内联元素中只能容纳其他内联元素或文本.内联元素的高度和宽度由元素中的内容所决定:当元素中存在文本时,其高度由文本的字体大小所决定,宽度由文本内容的长短决定. 当然,关于高度,行高line-height也可以设置内联元素的高度. 除此之外,如果仅仅对内联元素设置高度height和widt

css元素的margin,padding

一.元素的分类 1.内联元素:不独占一行,不能设置宽高,对其设置的margin,padding,不会影响垂直位置. 如<a>.<span>.<br>.<i>.<em>.<strong>.<label>.<q>.<var>.<cite>.<code>... a:对内联元素设置padding属性top,left,bottom,right都会生效; 但是给内联元素设置padding

内联元素的盒子模型与文档流定位padding属性

        内联元素的盒子模型 1.内联元素不能设置width宽度和高度height span{width:200px ; height:200px}   与     span{width:100px ; height:100px}   表现效果相同,由此可见内联元素不可以设置高度和宽度 2.内联元素可以设置水平方向的内边距padding-left或padding-right span{padding-left:20px ; padding-right:200px} 3.内联元素可以设置垂直

块级元素和内联元素的区别

独占一行         能设置宽高          垂直方向的margin   padding          水平方向margin  padding 块级元素:     是 是 是 是 是       是 内联元素: 否 否 否           是 是       是

块级元素和内联元素的区别(HTML)

请把下面二行代码放进body标签里:     <div style=”border: 1px solid red;”>div1</div>     <div style=”border: 1px solid red;”>div1</div>     浏览器的呈现效果:     div1     div1 这二个div占据了二行空间,叫做块级元素(block). 再把下面二行代码也放进body标签里:     <span style=”border: 1

Css中的两个重要概念:块状元素和内联元素

一.display:block display:block就是将元素显示为块级元素,一般是其他元素的容器,可容纳内联元素和其他块状元素,块状元素排斥其他元素与其位于同一行,宽度(width)高度(height)起作用.常见块状元素为div和p. 块元素(block element) address - 地址 blockquote - 块引用 center - 举中对齐块 dir - 目录列表 div - 常用块级容易,也是CSS layout的主要标签 dl - 定义列表 fieldset -

内联元素的padding和margin

首先区分一下3类元素: 1)块级元素:div.p等这一类具有宽高属性,且单独占一行的元素: 2)占位元素:img.input这一类具有宽高属性.紧随上一个元素不单独占一行的元素: 3)内联元素:span.strong这一类不具有宽高属性,且紧随上一个元素不单独占一行的元素. 本文主要讨论内联元素的padding.margin属性的存在与否和表现形式. 直接看代码: <div id="wrap"> <span>啊啊啊啊啊啊</span> <spa

块级元素及内联元素对margin、padding的态度

1.块级元素 margin:跟标准一样,设置该块级元素边框与同级兄弟元素或者父元素的距离,俗称外边距. padding:先延伸边框(也就是优先改变元素尺寸而不动元素中内容的位置),当边框碰到父元素或兄弟元素的边界时,才向相反方向延伸,这时会改变该元素中内容的位置 padding演示: 原样 html: <div>块级元素</div> css: div{ width:100px; border:1px solid #000; } 添加padding后: div{ width:100p