文章作者:Tyan
博客:noahsnail.com | CSDN | 简书
1. 内联元素
内联元素又叫行内元素,顾明思义,内联元素(inline element)不占据一整行,大小随内容而定,不可以设置宽度,也不可以设置高度,其宽度随着内容增加,高度随字体大小而改变。内联元素可以设置外边界,但外边界不对上下起作用,只能对左右起作用。
2. 块级元素
块级元素(block element)生成一个元素框,(默认地)它会填充其父级元素的内容,旁边不能有其他元素,它在元素框之前和之后生成了“分隔”符。块级元素总是在新行上开始并占据一整行,宽度和高度以及外边距和内边距都可以控制,宽度始终与浏览器宽度一样,与内容无关。块级元素可以容纳内联元素和其他块元素。
备注:宽度(width)、高度(height)、内边距(padding)和外边距(margin)。
3. 内联元素与块级元素的转换
块元素(block element)和内联元素(inline element)都是html规范中的概念。在加入了CSS控制以后,可以改变块元素和内联元素之间的差异。比如,我们可以把内联元素在style
属性中加上display:block
,使内联元素具有块元素的特点,也可以在块元素中加上display:inline
,使它具有内联元素的特点。CSS中还有一个dipslay:inline-block
,显示为内联块元素,表现为同行显示并可修改宽高内外边距等属性。
可变元素是基于以上两者随环境而变化的,它需要根据上下文关系确定该元素是块元素或者内联元素。可变元素隶属于上述两种元素,一旦根据上下文确定了它的类别,它就要遵循块元素或者内联元素的规则。
4. 内联元素与块级元素列表
3.1 块级元素列表
Type | Note |
---|---|
address | 定义地址 |
caption | 定义表格标题 |
dd | 定义列表中定义条目 |
div | 定义文档中的分区或节 |
dl | 定义列表 |
dt | 定义列表中的项目 |
fieldset | 定义一个框架集 |
form | 创建 HTML 表单 |
h1 | 定义最大的标题 |
h2 | 定义副标题 |
h3 | 定义标题 |
h4 | 定义标题 |
h5 | 定义标题 |
h6 | 定义最小的标题 |
hr | 创建一条水平线 |
legend | 元素为 fieldset 元素定义标题 |
li | 标签定义列表项目 |
noframes | 为那些不支持框架的浏览器显示文本,在frameset元素内部 |
noscript | 定义在脚本未被执行时的替代内容 |
ol | 定义有序列表 |
ul | 定义无序列表 |
p | 标签定义段落 |
pre | 定义预格式化的文本 |
table | 标签定义 HTML 表格 |
tbody | 标签表格主体(正文) |
td | 表格中的标准单元格 |
tfoot | 定义表格的页脚(脚注或表注) |
th | 定义表头单元格 |
thead | 标签定义表格的表头 |
tr | 定义表格中的行 |
3.2 行内元素列表
Type | Note |
---|---|
a | 标签可定义锚 |
abbr | 表示一个缩写形式 |
acronym | 定义只取首字母缩写 |
b | 字体加粗 |
bdo | 可覆盖默认的文本方向 |
big | 大号字体加粗 |
br | 换行 |
cite | 引用进行定义 |
code | 定义计算机代码文本 |
dfn | 定义一个定义项目 |
em | 定义为强调的内容 |
i | 斜体文本效果 |
img | 向网页中嵌入一幅图像 |
input | 输入框 |
kbd | 定义键盘文本 |
label | 标签为 input 元素定义标注(标记) |
q | 定义短的引用 |
samp | 定义样本文本 |
select | 创建单选或多选菜单 |
small | 呈现小号字体效果 |
span | 组合文档中的行内元素 |
strong | 语气更强的强调的内容 |
sub | 定义下标文本 |
sup | 定义上标文本 |
textarea | 多行的文本输入控件 |
tt | 打字机或者等宽的文本效果 |
var | 定义变量 |
3.3 可变元素素列表
可变元素为根据上下文语境决定该元素为块元素或者内联元素。
Type | Note |
---|---|
button | 按钮 |
del | 定义文档中已被删除的文本 |
iframe | 创建包含另外一个文档的内联框架(即行内框架) |
ins | 标签定义已经被插入文档中的文本 |
map | 客户端图像映射(即热区) |
object | object对象 |
script | 客户端脚本 |