标签分为两种等级:
1,行内元素。2,块级元素。行内元素和块级元素的区别:
行内元素:
- 与其他行内元素并排
- 不能设置宽高,默认的宽度就是文字的宽度
块级元素:
- 霸占一行,不能与其他任何元素并列。
- 能接受宽高,如果不设置宽度,那么宽度将默认变为父级的100%。
块级元素和行内元素的分类:
在HTML的角度来讲,标签分为三类:
- 文本级标签:p , span , a , b , i , u , em
- 容器级标签:div , h系列 , li , dt ,dd
- p:里面只能放文字和图片和表单元素,p里面不能放 h 和 ul ,也不能放p。
从CSS的角度讲:
- 行内元素:除了p之外,所有的文本级标签,都是行内元素。p是个文本级标签,但是是个块级元素。
- 块级元素:所有的容器级标签,都是块级元素,以及p标签。
块级元素和行内元素的相互转换:
通过display属性将块级元素和行内元素进行强制转化:
display:inline;
那么这个标签将变为行内元素,即:
1.此时这个div将不能设置宽度和高度了。
2.此时这个div可以和其他行内元素并排了。
同样的我们也可以用display将行内元素转行成块级元素。
display:block;
那么这个span标签将变为块级标签,即:
1.此时这个span能够设置宽度,高度。
2.此时这个span必须独占一行,其他元素无法与之并排。
3.如果不设置宽度,将占满父级。
特殊的:
display:inline-block;
布局特性:
1.可以在同行排列
2.支持所有的css样式设置
3.在不设置宽高大小时,有内容撑开盒子的大小,其内容可以是任意的标签和文字
4.垂直方向上,所有的行级标签,在默认情况下手机按照其内部最后一行文字的底线对齐,为了保持其一致性,需要给每个行级标签设置vertical-align属性,保证垂直方向上的对齐