内联元素为啥设置内外边距都有效果??

来源:12-3 我要和你站一起 - 内联元素

用户1115823

2015-05-01 22:08

内联元素为啥设置内外边距都有效果??请看代码效果

写回答 关注

2回答

  • 亚洲善待郑强组织
    2015-12-14 21:30:13

    内联元素与块级元素及内外边距的影响

    块级元素(block):

    新行开始;

    高度,行高以及外边距和内边距都可控制;

    宽度缺省是它的容器的100%

    可以嵌套内联元素和其他块元素

    常用的块级元素:div、h1~h6、dl、ul、ol 

    内联元素(inline):

    和其他元素都在一行上;

    宽度就是它的文字或图片的宽度,不可改变

    内联元素只能容纳文本或者其他内联元素

    常用的内联元素:a、span、img、input、lable、select、strong、textarea

     替换元素:

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

    例如浏览器会根据<img>标签的src属性的值来读取图片信息并显示出来,而<img>只是指向一个图像文件,又如<input>标签的type属性来决定是显示输入框,还是单选按钮等。

    非替换元素:

    指内容包含在文档中的元素。

    例如,如果一个段落的文本内容都放在该元素本身之内,则这个段落就是一个非替换元素。

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

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

    向一个内联非替换元素应用内边距上下边距时,对行高(line-height)没有任何影响,但当应用左右边距时,会对显示效果有影响,因此可以设置padding-left/right,margin-left/right

    <style type="text/CSS">
           #two{
               background-color: red;
               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{
               background-color: red;
               margin-top:50px;
               padding-bottom: 50px;
           }
       </style>

       <span id="one">1111</span>
       <span id="two">上下对行高均无影响,但padding可显色</span><br />
       <span id="three">除去行高区域外均不占文本流空间</span>

    效果:

     

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

    网上找的,希望能帮到你

  • wld_keep_Moving
    2015-12-14 20:53:41

    内联元素第二特点说的是高度,宽度及顶部和底部边距不可设置,没说padding不可设置,根据实际结果padding是可设置的,其中顶部和底部边距不可设置是指margin的top和bottom不可设置,可以检验下。但是left和right设置有效

初识HTML(5)+CSS(3)-升级版

HTML(5)+CSS(3)基础教程8小时带领大家步步深入学习标签用法和意义

1225293 学习 · 18230 问题

查看课程

相似问题