- N +

讨论内外边距对行内元素是否起作用,则要对行内替换元素和行内非替换元素分别讨论:

文章目录 [+]

css元素的分类


1. 替换和不可替换元素


从元素本身的特点来讲,可以分为替换和不可替换元素。


a) 替换元素


替换元素就是浏览器根据元素的标签和属性,来决定元素的具体显示内容。


例如:浏览器会根据<img>标签的src属性的值来读取图片信息并显示出来,而如果查看(X)HTML代码,则看不到图片的实际内容;


又例如:根据<input>标签的type属性来决定是显示输入框,还是单选按钮等。


(X)HTML中的<img>、<input>、<textarea>、<select>、<object>都是替换元素。这些元素往往没有实际的内容,即是一个空元素,浏览器会根据元素的标签类型和属性来显示这些元素。可替换元素也在其显示中生成了框。

  1. 明确外边距可以应用到行内元素

  2. 向一个内联非替换元素应用外边距,对行高(line-height)没有任何影响

  3. 向一个内联非替换元素应用内边距上下边距时,对行高(line-height)没有任何影响,但当应用左右边距时,会对显示效果有影响,因此可以设置padding-left/right,margin-left/right,margin-top/bottom无效,padding-top/bottom不占据文本流空间。

<style type="text/css">        

#two{                        

width:100px;        

margin-right:50px;

padding-left:50px;        

}    </style>     

<span id="one">1111</span>   

 <span id="two">2222</span>    

<span id="three">3333</span>

 4.当一个内联非替换元素应用外边距,由于其外边距是透明而行高无影响,所以不显示视觉效果,但当上色时,由于内边距是非透明的,因此可以显示出效果

<style type="text/css">        

#two{    

  margin-top:50px;   

   padding-bottom: 50px;      

  } 

   </style>    

 <span id="one">1111</span>   

 <span id="two">上下对行高均无影响,但padding可显色</span><br />   

 <span id="three">除去行高区域外均不占文本流空间</span>

效果:817151-20151013222839632-601760286.png

5.对于一个内联替换元素而言,为其设置的内外边距等实际上是为其替换元素所设置的,会影响到替换元素的尺寸边距,从而影响到行高,因此可以设置margin和padding


作者:huchao
未来永远在它该来的路上,能够把握的只是此时此刻——万折必东
返回列表
上一篇:
下一篇:
评论列表 (暂无评论,共1359人参与)参与讨论

还没有评论,来说两句吧...

发表评论中国互联网举报中心

快捷回复: