div和span、relative和absolute、display和visibility区别

div和span、relative和absolute、display和visibility是很容易混淆和弄错的html标签与css属性,现在简单的罗列出它们的区别与使用要点,供大家参考。
 
一、div和span的区别
   div是一个块级元素,可以包含段落,表格等内容,用于放置不同的内容。一般我们在网页通过div来布局定位网页中的每个区块。
   span是一个内联元素,没有实际意义,它的存在纯粹是为了应用样式,给一段内容加上<span></span>标记可以通过在span上定义样式来设定其内容的样式。
 
二、relative和absolute的区别
   relative,css中的写法是:position:relative;  他的意思是绝对相对定位,他是参照父级的原始点为原始点,无父级则以body的原始点为原始点,配合trbl进行定位,当父级内有padding等css属性时,当前级的原始点则参照父级内容区的原始点进行定位。
   absolute,css中的写法是:position:absolute; 他的意思是绝对定位,他是参照浏览器的左上角,配合top、right、bottom、left(下面简称trbl)进行定位,在没有设定trbl,默认依据父级的做标原始点为原始点。如果设定trbl并且父级没有设定position属性,那么当前的absolute则以浏览器左上角为原始点进行定位,位置将由trbl决定。
 
三、display和visibility的区别
   display:none和visibility:hidden都可以隐藏一个元素
   但visibility:hidden只是隐藏了元素的内容,但其使用的位置空间仍然被保留。
   而display:none则相当把元素从页面中去除,其占用位置也将被删除。