【前端体系课】-- HTML常见元素

<! DOCTYPE>
HTML 最上方的一段文本我们称之为文档类型声明,用于声明文档类型
<! DOCTYPE html>
- HTML 文档声明,告诉浏览器当前页面是 HTML5 页面;
- 让浏览器用 HTML5 的标准去解析识别内容;
- 必须放在 HTML 文档的最前面,不能省略,省略了会出现兼容性问题;
html
表示一个 HTML 文档的根(顶级元素),所以它也被称为根元素
W3C 标准建议为 html 元素增加一个 lang 属性,作用是:
- 帮助语音合成工具确定要使用的发音;
- 帮助翻译工具确定要使用的翻译规则;
常用的规则:
- lang=“en” 表示这个 HTML 文档的语言是英文;
- lang=“zh-CN” 表示这个 HTML 文档的语言是中文;
head
规定文档相关的配置信息(也称之为元数据),
包括文档的标题, 引用的文档样式和脚本等
title
设置网页的标题
meta
- 可以用于设置网页的字符编码,让浏览器更精准地显示每一个文字,不设置或者设置错误会导致乱码
- 一般都使用utf-8编码,涵盖了世界上几乎所有的文字
link
外部资源链接元素,规范了文档与外部资源的关系
通常是在head元素中
常见的属性:
- href:此属性指定被链接资源的 URL。 URL 可以是绝对的,也可以是相对的。
- rel:指定链接类型,常见的链接类型: https://developer.mozilla.org/zh-CN/docs/Web/HTML/Link_types
- icon:站点图标;
- stylesheet: CSS 样式;
body
就是网页的具体内容和结构, 在浏览器窗口中看到的东西
h
head 的缩写, 表示文字的标题
有 <h1>~<h6> 六个不同级别的标题
思考: 浏览器如何区分不同的元素? 呈现不同的效果?
浏览器内核会给不同的元素添加不同的 CSS 样式
即可以用任何元素添加自定义的 CSS 样式实现任意样式,
<div> 非常多见的原因
p
paragraph 的缩写, 表示文本的一个段落
p 元素多个段落之间会有一定的间距
img
image 的缩写, 是图像、图像的意思
是一个可替换元素( replaced element )
可替换元素:
浏览器会根据 src 属性进行网络请求, 将请求的资源替换到 img 的位置
img 有两个常见的属性:
- src 属性: source 单词的缩写,表示源
是必须的,它包含了你想嵌入的图片的文件路径。 - alt 属性:不是强制性的,有两个作用
- 作用一:当图片加载不成功(错误的地址或者图片资源不存在),那么会显示这段文本;
- 作用二: 屏幕阅读器会将这些描述读给需要使用阅读器的使用者听,让他们知道图像的含义;
属性 src :
- 网络图片:一个 URL 地址;
网络图片的设置非常简单,给一个地址即可; - 本地图片:本地电脑上的图片,后续会和 html 一起部署到服务;
本地图片的路径有两种方式:
- 方式一: 绝对路径(几乎不用);
从电脑的根目录开始一直找到资源的路径; - 方式二: 相对路径(常用);
- 相当于当前文件的一个路径;
- . 代表当前文件夹(1 个.),可以省略
- .. 代表上级文件夹(2 个.)
对于网页来说,不管什么操作系统(Windows、 Mac、 Linux),路径分隔符都是 /,而不是 \
a
anchor, 锚的简称
定义超链接,用于打开新的 URL
有两个常见的属性:
- href: Hypertext Reference 的简称
指定要打开的 URL 地址;
也可以是一个本地地址; - target: 该属性指定在何处显示链接的资源。
- _self:默认值,在当前窗口打开 URL;
- _blank:在一个新的窗口中打开 URL;
锚点链接可以实现:跳转到网页中的具体位置
- 在要跳到的元素上定义一个 id 属性;
- 定义 a 元素,并且 a 元素的 href 指向对应的 id;

图片链接: 图片也是可以点击进行跳转
- a元素中不存放文字,而是存放一个img元素;
资源链接: 点击可以下载对应资源
邮件链接: 点击可发送邮件
iframe
用于在一个 HTML 文档中嵌入其他 HTML 文档

frameborder 属性
- 用于规定是否显示边框
- 1:显示
- 0:不显示 (默认值)
网页可禁止嵌套 (比如百度)
在响应头设置同源策略
a 元素 target 的其他值:
- _parent:在父窗口中打开 URL
- _top:在顶层窗口中打开 URL
div 和 span
- div 元素: division,分开、分配的意思;
- span 元素:跨域、涵盖的意思;
产生的历史
- 网页的发展早期是没有 css,这个时候我们必须通过语义化元素来告知浏览器一段文字如何显示;
- 后来出现了 css,结构和样式需要分离,这个时候 html 只需要负责结构即可;
- 比如 h1 元素可以是一段普通的文本+CSS 修饰样式;
- 这个时候就出现了 div、 span 来编写 HTML 结构所有的结构,样式都交给 css 来处理;
理论上来说:
- 页面可以没有 div、 span;
- 也可以全部都是div、 span;
两者区别
div元素和span元素都是“纯粹的” 容器,也可以把他们理解成“盒子” ,它们都是用来包裹内容的;
- div: 多个 div 元素包裹的内容会在不同的行显示
- 一般作为其他元素的父容器,把其他元素包住,代表一个整体
- 用于把网页分割为多个独立的部分
- span: 多个 span 元素包裹的内容会在同一行显示;
- 默认情况下,跟普通文本几乎没差别
- 用于区分特殊文本和普通文本,比如用来显示一些关键字
div 是块级元素, 独占整行
对浏览器来说, 会自动给 div 添加 css 属性
display: block
实现整行效果, 而 span 没有
不常用元素
strong
内容加粗、强调;
- 通常加粗会使用 css 样式来完成;
i
内容倾斜;
- 通常斜体会使用 css 样式来完成;
code
用于显示代码
- 偶尔会使用用来显示等宽字体;
br
换行元素
- 开发中已经不使用;