常见的inline元素、block元素、inline-block元素

  1.背景介绍
     2.知识解析
     3.常见问题
     4.解决方案
     5.编码实战
     6.扩展思考
     7.参考文献

    1.背景介绍

     历史 
     这三个元素到底是怎么产生的。
     line和block可能是类似于1+1=2的基础概念,还记得在没有网络的时代,有一种叫做剪报的东西,它是把从报刊杂志等上面剪下的文字、图片资料,整理分类并集纳成册。我们可以把剪下来的纸块看成是block元素,而用笔记录的文字、图画,看成是line元素。最早在做浏览器的时候加入这两个元素,可能是遵循同样的模式。
     inline-block,根据搜寻的资料发现,在IE5.5版就开始支持inline-block值,也就是1999年12月(最终版为2007年7月)。css2更新发布在1998年5月,2.1的更新草案则是在2002年8月2日发布的(css2.1版添加了display的inline-block值)。当年可能是为更好的进行元素布局,才在标准里给display添加inline-block值,使得我们有一个很方便的元素特性可供使用。
     至于W3C和IE之间发生过什么友好协商我们就不得而知了。
     目的
     理解这几个元素是学习web需要理解的核心概念之一
     每个html标签元素都有其默认的元素类型,主要包括两大类:inline内联元素、block块元素。除默认为以上两种,还有部分标签元素叫可变元素,会根据上下文语境决定该元素为inline元素或是block元素。在css里,有一个display的属性,他规定元素应该生成的框的类型。可能的值有很多,我们比较常用的有table-cell,inline-block等,也包括我们这次小课堂要讲的inline、block、inline-block。
     其中inline-block是在css2.1里新增的值。具有这个值的元素,我们可以把它叫做inline-block元素。
     以上元素的类型是我们学习web里需要理解的核心概念之一。
         对页面进行布局排版,究其根本是在普通文档流的基 础上,进行各种设置,达到我们想要的效果。
         这三个元素特性,完全影响我们的布局排版。下面就开始认识一下它们。
     2.知识解析
知识点1:常见的inline、inline-block、block元素
       常见元素:
     inline:a,span,br,i,em,strong,label,q,var,cite,code
     inline-block:img,input
     block:p,div,p,h1...h6,ol,ul,dl,table,address,blockquote,form
 inline特点:
     (1)和其他元素都在一行上,直到一行排列不下,才会新换一行,其宽度随元素的内容而变化。
     (2)元素的高度、宽度及顶部和底部边距不可设置
      (3)元素的宽度就是它包含的文字或图片的宽度,不可改变。
 block特点:
         (1)每个块级元素都从新的一行开始,并且其后的元素也另起一行。
     
         (2)元素的高度、宽度、行高以及顶和底边距都可设置。
     
         (3)元素宽度在不设置的情况下,是它本身父容器的100%(和父元素的宽度一致),除非设定一个宽度。
     inline-block特点:
 内联块状元素(inline-block)就是同时具备内联元素、块状元素的特点,
     代码display:inline-block就是将元素设置为内联块状元素。
     和其他元素都在一行上;元素的高度、宽度、行高以及顶和底边距都可设置。

    3.常见问题
   问题一:inline和inline-block元素之间的间距问题
   问题二:inline-block元素的如何垂直居中
   问题三:利用浏览器来查看元素的类型
     4.解决方案
     问题1:inline和inline-block元素之间的间距问题
     去除inline-block元素间间距的N种方法
     问题2:inline-block元素的如何垂直居中
     方法1:设置上下padding值相等;
     方法2:设置vertical-align:middle;
     方法3:设置line-height大于font-size即可实现单行文本垂直居中,无需设置line-height和height值相等
    问题3:利用浏览器来查看元素的类型
     打开谷歌浏览器,F12,选中“Element”项,然后选中一个元素,在“Computed”的display中即可看到元素的类型,
     查看到底是inline元素还是block 元素,亦或是其它类型的元素。
     5.编码实战

问题;

1.想要一个块级元素,是设置div好,还是设置span加display

答;这个可以根据自己的需求去写,也可以用div标准的block

2.inline-block布局较float布局而言,有哪些优势呢?

float布局:每个列表元素的高度必须要一致,否则就会像是俄罗斯方块一样,“锯齿相错”,例如一个左浮动列表布局,如果第一行有个列表高度高于其他列表,那就在第二行,第一个元素会沿着最高元素的右侧对齐,此原因是属于恶魔系的float属性破坏了inline box。

display:inline-block最大的不同就是其没有父元素的匿名包裹特性,这使得display:inline-block属性的使用非常自由,可与文字,图片混排,可内嵌block属性元素。黑白通吃,左右逢源。inline-block属性的元素适用于inline box模型,所以,当其中的列表元素高度不一时,是不会有错位的。

3.

(1)块级元素的默认长度?                                                                                                     答:默认长度是它父元素的长度。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值