005-html 布局元素的分类有哪些?描述每种布局元素的应用场景

分类

内联元素

span,a,b,strong,i,em,br,input,textarea

本身属性为 display: inline;

和其他行内元素从左到右一行显示,不可以直接控制宽度、高度等其他相关 css 属性,但是可以直接设置左右内外边距的值(上下也可以设置,但是不影响周围元素)。

宽度是由本身内容大小决定的(文本、图片等)

只能容纳文本或者其他行内元素,不能嵌套块级元素。

块状元素

div,h1-h6,hr,menu,ol,ul,li,dl,table,p,form

本身属性为 display: block;

独占一行,每个块级元素都会从新的一行重新开始,从上到下排布,可以控制其宽度、高度等其他相关 css 属性,例如(padding、margin 等)

在不设置宽度的情况下,块级元素的宽度是它父级元素内容的宽度

在不设置高度的情况下,块级元素的高度是它本身内容的高度

内联块状元素

内联块状元素综合了前两种的特性却各有取舍。

本身属性为 display: inline-block;

不自动换行

能够识别 width、height、line-height、padding、margin,默认排列顺序从左到右。

应用场景

  • 内联元素:用于不指定宽高,宽高由内容而定
  • 块状元素:用于指定宽高,标签占满一行
  • 内联块状元素:用于指定宽高,不占满一行

部分答案整理自网络资源