* 按照 "外在盒子" 是内联还是块级分类:
**块元素**
独占一行,对宽高的属性值生效;**如果不给宽度**,块级元素就默认为浏览器的宽度,**即就是100%宽**。常见标签有div、p、h1、h2、h3、h4、h5、h6、pre 等,具体见 [块级元素示例](https://developer.mozilla.org/zh-CN/docs/Web/HTML/Block-level_elements)。
**行内元素**
标签在一行内,宽度与高度由内容决定,只有在内容超过HTML的宽度时,才会换行。常见标签有span、input、a、em、strong、b、br、img、select、button等,具体见 [行内元素示例](https://developer.mozilla.org/zh-CN/docs/Web/HTML/Inline_elements)。
* 根据是否有可替换内容分类:
**替换元素**
替换元素(replaced element)指浏览器根据元素的标签和属性,来决定元素的具体显示内容。替换元素的展现效果不是由 CSS 来控制的。这些元素是一种外部对象,它们外观的渲染,是独立于 CSS 的,它们的内容不受当前文档的样式的影响。CSS 可以影响替换元素的位置,但不会影响到替换元素自身的内容。某些可替换元素,例如\<iframe>元素,可能具有自己的样式表,但它们不会继承父文档的样式。常见的替换元素有img , input , textarea , select , object等。
**非替换元素**
非替换元素(non-replaced element)指内容直接表现给用户端的元素,常见的有span、p、label等。