HTML 标签(元素)可以分为两个类别,分别是块级元素和内联元素(也叫行内元素)。
一、内联元素(inline)
1. 内联元素的概念
内联元素(html规范中的概念)英文:inline element,其中文叫法有多种,如:内联元素、内嵌元素、行内元素、直进式元素等。基本上没有统一的翻译。另外提到内联元素,通常会涉及到的属性是display:inline;这个属性能够修复著名的IE双倍浮动边界问题。
2. 内联元素的特性
①和相邻的内联元素在同一行;
②宽度(width)、高度(height)、内边距的top/bottom(padding-top/padding-bottom)和外边距的top/bottom(margin-top/margin-bottom)都不可改变;
③宽度就是它的文字或图片的宽度,不可改变
④内联元素只能容纳文本或者其他内联元素
对于行内元素的使用,需要注意如下几点:
• 设置宽度 width 无效;
• 设置高度 height 无效,但可以通过 line-height 来设置行高;
• 可以设置 margin 外边距,但只对左右外边距有效,上下无效;
• 设置 padding 内边距时,只有左右 padding 有效,上下则无效,需要注意的是元素范围是增大了,但是对元素周围的内容是没影响的;
• 可以通过 display 属性将元素在行内元素和块级元素之间进行切换。
3. HTML标签中常见的内联元素
| a | 锚点 |
| abbr | 缩写 |
| acronym | 首字母缩略词 |
| b | 粗体 |
| bdo – bidi override | 用来覆盖默认的文本方向 |
| big | 大字体 |
| br | 换行 |
| cite | 引用 |
| code | 计算机代码(在引用源码的时候需要) |
| dfn | 定义字段 |
| em | 强调 |
| font | 字体设定(不推荐) |
| i | 斜体 |
| img | 图片 |
| input | 输入框 |
| kbd | 定义键盘文本 |
| label | 表格标签 |
| q | 短引用 |
| s | 中划线(不推荐) |
| samp | 定义范例计算机代码 |
| select | 项目选择 |
| small | 小字体文本 |
| span | 常用内联容器,定义文本内区块 |
| strike | 中划线 |
| strong | 粗体强调 |
| sub | 下标 |
| sup | 上标 |
| textarea | 多行文本输入框 |
| tt | 电传文本 |
| u | 下划线 |
| var | 定义变量 |
二、块级元素(block)
1. 块级元素的概念
块级元素(block element),和其对应的是内联元素(inline element),都是html规范中的概念。块元素和内联元素的基本差异是块元素一般都从新行开始,相邻的块级元素将会在不同行显示。
2. 块级元素的特性
①总是独占一行,表现为另起一行开始,而且其后的元素也必须另起一行显示;
②宽度(width)、高度(height)、内边距(padding)和外边距(margin)都可控制;
③如果省略块级元素的宽度,那么它的宽度默认为当前浏览器窗口的宽度;
④块级元素中可以包含其它的内联元素和块级元素。
3. HTML标签中常见的块级元素
| address | 地址 |
| blockquote | 块引用 |
| center | 居中对齐块 |
| dir | 目录列表 |
| div | 常用块级容器,也是css layout的主要标签 |
| dl | 定义列表 |
| fieldset | form控制组 |
| form | 交互表单 |
| h1 | 大标题 |
| h2 | 副标题 |
| h3 | 3级标题 |
| h4 | 4级标题 |
| h5 | 5级标题 |
| h6 | 6级标题 |
| hr | 水平分隔线 |
| isindex | input prompt |
| menu | 菜单列表 |
| noframes | frames可选内容,(对于不支持frame的浏览器显示此区块内容) |
| noscript | 可选脚本内容(对于不支持script的浏览器显示此内容) |
| ol | 排序表单 |
| p | 段落 |
| pre | 格式化文本 |
| table | 表格 |
| ul | 非排序列表(无序列表) |
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程