元素分类
块元素(display:block)
<p></p>
<h1></h1>~<h6></h6>
<ul></ul>
<ol></ol>
<hr>
<div></div>
<form></form>
特点:
·自己独占一行
·高度,宽度、外边距以及内边距都可以控制。
·宽度默认是容器(父级宽度)的100%
·是一个容器及盒子,里面可以放行内或者块级元素。
注意问题:
只有文字才能组成段落,因此p标签里面不能放块级元素,特别是p标签不能放div。同理还有这些标签h1,h2,h3,h4,h5,h6,dt,他们都是文字类块级标签,里面不能放其他块级元素。
行内元素(display:inline)
<span></span>
<a href=""></a>
<b></b>
<strong></strong>
<i></i>
<em></em>
<label></label>
<small></small>
特点:
·相邻行内元素在一行上,一行可以显示多个。
·高、宽直接设置是无效的。
·默认宽度就是它本身内容的宽度。
·行内元素只能容纳文本或则其他行内元素。
注意:
·链接里面不能再放链接。
·特殊情况a里面可以放块级元素,但是给a转换一下块级模式最安全。
行内块元素(display:inline-block)
<img src="" alt="">
<iframe src=""></iframe>
<input type="">
<textarea></textarea>
<select></select>
<button></button>
特点:
·和相邻行内元素(行内块)在一行上,但是之间会有空白缝隙。一行可以显示多个
·默认宽度就是它本身内容的宽度。
·高度,行高、外边距以及内边距都可以控制。
块元素、行内元素和行内块元素的区别
元素模式 | 元素排列 | 设置样式 | 默认宽度 | 包含 |
块级元素 | 一行只能放一个块级元素 | 可以设置宽度高度 | 容器的100% | 容器级可以包含任何标签 |
行内元素 | 一行可以放多个行内元素 | 不可以直接设置宽度高度 | 它本身内容的宽度 | 容纳文本或其他行内元素 |
行内块元素 | 一行可以放多个行内块元素 | 可以设置宽度和高度 | 它本身内容的宽度 |
块级元素、行内元素和行内块元素互转
块转行内:display:inline;
行内转块:display:block;
块、行内元素转换为行内块:display: inline-block;