1.定义
行内元素只占对应标签的边框所包含的空间。只能容纳文本活着其他内联元素。
块级元素占据其父元素(容器)的整个空间,因此创建了一个“块”。通常浏览器会在块级元素前后另起一行。能容纳其他块元素或者内联元素。
2.区别
1.块元素,总是在新行上开始;内联元素,和其他元素在一行;
2.块元素,能容纳其他块元素或者内联元素;内联元素,只能容纳文本或其他内联元素;
3.块元素中高度,行高以及顶和底边距都可以控制;内联元素中高,行高及顶和底边距不可改变。
3.各自的特点
1.块元素的特点:
总是在新行上开始;
高度、行高以及外边距和内边距都可控制;
宽度默认是它容器的100%,除非设定一个宽度;
他可以容纳内联元素和其他块元素。
2.内联元素的特点:
和其他元素都在同一行;
高,行高及外边距和内边距不可改变;
宽度就是它的文字和图片的宽度,不可改变;
内联元素只能容纳文本或者其他内联元素
4.块级元素和内联元素之间的转换:
1.display
块元素默认display:block;行内非替换元素(a,span)默认为display:inline;行内替换元素(input)默认为display:inline-block;
a.display:none;不显示该元素,也不会保留该元素原先占有的文档流位置。
b.display:block;转换为块级元素。
c.display:inline;转换为行内元素。
d.display:inline-block;转换为行内块级元素。
2.float
当把行内元素设置完float:left/right后,该行内元素的display属性会被赋予block值,且拥有浮动特性。行内元素去除了之间的莫名空白。
3.position
当为行内元素进行定位时,position:absolute与position:fixed.都会使得原先的行内元素变为块级元素。