【 HTML 基础教程】

HTML 基础教程


★ HTML 标签的 参考列表


1. 什么是 HTML?

1.1 HTML 是什么意思? (超文本 标记语言)

  • HTML
    • HyperText Markup Language
    • ['haɪpɚ’tɛkst]
    • 超文本 标记语言
    • 标记语言的作用 是什么? 标记的什么?
      • 通过标记符号(各个标签) 来 标记 要显示的 网页中的各个部分,比如 网页中显示的文字,图片,音乐,视频等,都是用 标签来表示的,标签表示的内容,浏览器就能认识和解析.
    • 标签/标记 的意义
      • 描述 网页: 告诉浏览器 如何显示 其中的内容 (让浏览器能够显示各种类型的网页内容)
    • 网页文件(.html) 的本质
      • 一种 文本 文件,代码内容就是 文本,音乐,图片,视频之类的,都是通过这些 文本式的标签来实现的.
  • HTML 是一种 编程语言吗?
    • 不是 编程语言, 而是一种 标记语言 (markup language)
    • 标记语言是一套 标记标签 (markup tag)

1.1 “超文本”是什么意思?

  • , 文本中包含了“超链接
    • 超链接 是什么?
    • 本质:不同 元素之间的连接.
    • 指从一个网页 指向一个目标的连接关系, 网页—> 一个目标
      • 这个目标可以是什么?
        • 另一个网页,相同网页上的不同 位置,一个图片,一个电子邮件地址,一个文件,一个应用程序等,而不仅仅是文本.
  • ② 指页面内可以包含 图片、链接,甚至音乐、程序等 非文字元素。(如何包含,使用超链接)
    在这里插入图片描述

2. HTML 标签

2.1 HTML 标签的特点

  • HTML tag
    • ① 由尖括号 包围的关键词
      • 比如 <html>
  • ② 通常是 成对出现
    • 比如<b></b>
  • ③ 什么是 开始标签和 结束标签?
    • 第一个标签<b>开始 标签, 第二个标签 </b>结束 标签
      • 也称为 开放 标签和 闭合 标签

2.2 HTML 标签的分类 (双标签,空标签/单标签)

  • 按照标签是否成对 来分类
    • 双标签
      • <b></b>
    • 单标签(空标签)
      • <br />
        • / 前有一个空格
        • 数量 比较少
  • 按照元素前后 是否会换行
    • 块级元素
      • block level element
      • 块元素显示时有什么特点?
        • 显示时 会前后换行
    • 内联元素
      • 内联元素显示时的特点是?
        • 不会 前后换行
  • 一般用什么标签 来组合其他元素?
    • div 标签
      • 没有特定含义
      • 块级元素
  • 一般用什么标签 做容器 为部分文本 设置样式?
    • span 标签
      • 没有特定含义
      • 内联元素

2.3 标签之间的 关系

  • 嵌套关系
    • html 是所有标签的 根标签.
    • 父子关系: head标签,是title的父标签. head > title
    • 书写时 缩进: 书写的时候,进行缩进,这样看起来 更清晰明了.
  • 并列关系
    • 兄弟关系: headbody,是并列的,就是兄弟关系.

在这里插入图片描述

<!-- html 文档的基本结构 -->

<!-- 根标签 -->
<html> 
	
	<!-- 文档的 头部标签 -->
	<head>
		<!-- 网站的标题 -->
		<title>学习视频的练习网站</title>
	</head>
	<!-- 主体 标签,页面内容 都写在这里 -->
	<body>
		学习视频的练习网站
	</body>

</html>

2.4 标签的 语义化

  • html 标签,有的是有具体含义的,有的是没有具体含义的
    • 有语义的标签: 比如 段落p标签,一级标题 h1标签,开发者 一看就知道是什么含义,里面包含了什么内容.
    • 没有 语义的标签: 比如 块分区div标签,行内分区 span标签,知道是分区标签,但是 看标签,不能了解 标签内容的含义.
  • 语义化标签的 好处
    • 标签,应该尽量 能体现出 标签内容的含义.
    • 利于 搜索引擎
    • 利于 浏览器解析

3. HTML 文档

  • HTML 文档 = 网页
    • 就是 网页的别称
  • HTML 文档的用途是什么?
    • 描述网页
  • 网页包含什么?HTML 文档是什么组成的 ?
    • HTML 标签和纯文本
  • 如何读取 HTML 文档,以网页的形式 显示它们?
    • 使用浏览器
    • 浏览器 根据 HTML标签 来 解释页面的内容

3.1 HTML 文档的 骨架/ 结构

  • 快速生成 html 骨架: 在 sublime text3 中,输入 !或者 html:5 ,然后按下 tab 按键,即可生成
    • (注意,文档的类型,一定要是 html(即,后缀名 .html),纯文本不行)
    • 文档 头部分head标签)
      • “头”部提供关于 网页的信息
    • 文档 主体部分body标签)
      • “主体”部分提供网页的 具体内容
        在这里插入图片描述
  • 文档的 基本结构
<!-- html 文档的基本结构 -->

<!-- 根标签 -->
<html> 
	
	<!-- 文档的 头部标签 -->
	<head>
		<!-- 网站的标题 -->
		<title>学习视频的练习网站</title>
	</head>
	<!-- 主体 标签,页面内容 都写在这里 -->
	<body>
		学习视频的练习网站
	</body>

</html>

3.2 定义 文档类型 (< !DOCTYPE> 声明)

  • 使用 <!DOCTYPE> 声明
    • 使用的 版本号: 告诉浏览器 我们用的是 哪个版本的 html (因为 html 有很多版本,如, html:xt,html 4等)
      • 目前最新的是 html5 版本,向下兼容其他的 html 版本.
      • html 5 的文档类型 声明: <!DOCTYPE html>
    • 浏览器 解析: 浏览器,按照指定的 文档类型,进行解析的.
  • 定义 文档的类型 的意义
    • 帮助浏览器 正确地显示 网页
  • 声明: <!DOCTYPE> 是 HTML 标签 吗 ?
    • 不是 . 是为浏览器提供 的一项信息(声明)
  • 声明 版本号: 向浏览器说明 HTML 是 用哪个版本 编写
    • 使用 <!DOCTYPE> 声明
  • HTML (超文本 标记语言) 的版本
版本年份
HTML1991
HTML+1993
HTML 2.01995
HTML 3.21997
HTML 4.011999
XHTML 1.02000
HTML52012
XHTML52013

  • 各版本的 文档类型和结构的 快捷输入

    • ① html: html:4s (sublime text3 中,输入后, 按 tab 键)
    • ② xhtml: html:xt
    • ③ html5: !html:5
  • html 4.01 版本

    <!-- html 4,01 版本 ,几乎没人用了-->

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
    <html lang="en">
    <head>
    	<meta http-equiv="Content-Type" content="text/html;charset=UTF-8" />
    	<title>Document</title>
    </head>
    <body>
    	
    </body>
    </html>
  • xhtml 1.0 版本
    <!-- xhtml 版本 (这个还有人在用,一些政府官网,但用的最多的 还是 html 5.0) -->

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
    <head>
    	<meta http-equiv="Content-Type" content="text/html;charset=UTF-8" />
    	<title>Document</title>
    </head>
    <body>
    	
    </body>
    </html>
  • html 5 版本
<!-- 最新的版本, html 5 版本 -->
<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8" />
	<title>Document</title>
</head>
<body>
	
</body>
</html>

4. HTML 元素

  • 元素= 开始标签 到 结束标签 的所有代码 (包括 标签的内容)

  • 词汇补充
    • 标签的 不同叫法
  • 开始标签 = 开放标签
    • strat tag = opening tag
  • 结束标签 =闭合标签
    • end tag = closing tag

4.1 HTML 元素语法

  • 元素 的开始

    • 开始标签,如 <body>
  • 元素 的结束

    • 结束标签,如 </body>
  • 元素 的内容

    • 开始标签 和结束标签 之间的内容
  • 空内容

    • empty content
    • 有的元素 没有内容,比如 水平线 <hr />,没有结束标签,也没有标签内容
  • 空元素/空标签

    • 没有内容 的元素,仅包含 属性.
    • <br />就是没有 关闭/结束 标签 的空元素
  • 区分 结束标签 和 空标签的 写法

    • / 的位置不同,
    • 一个是在 标签名前面 </body>
    • 一个是在 标签名 后面 <hr />
  • 空元素/空标签 的关闭

    • 在开始标签中关闭
    • 在开始标签中,标签名后面+空格 + 斜杠
      • 比如 <br /> ,/ 前有一个空格
  • 元素的嵌套

    • 一个元素 放在另一个 元素之中
<head>
    <meta charset="UTF-8" />
    <title>视频学习的练习网站</title>
</head>

  • 使用 注意事项
    • 正确关闭: 不要漏写 结束标签
      • 所有元素 必须 被关闭
        • 双标签: <h1></h1>
        • 单标签(空标签): <br />
    • 正确嵌套: 元素要 正确嵌套
      • 子元素,要放在 开始和结束标签之间: <li> <a href=""></a> </li>
    • 标签和属性名 小写: 标签名 和 属性名,都使用 小写
      • 所有标签名,都有使用小写
      • 所有的 标签的属性名,使用小写
    • 加引号: 所有属性的 属性值,一定要 引号
      • <img src="star.jpg" alt="天上的星星" />

5. HTML 属性 (元素的 附加信息/特征信息)

5.1 属性的基本介绍

  • 元素的 附加信息/特征信息:

    • 为 HTML 元素 提供 附加信息,比如 颜色,宽高,位置 等
  • 属性的 形式

    • 属性名称=“属性值”
    • name ="value"
  • 标签的属性的 位置

    • 总是写在 开始标签中,标签名的后面.
      • <img src="star.jpg" alt="天上的星星" />
      • <label for="birthdata">出生日期:</label>
  • 属性值的 引号

    • 一定 要有 引号
      • 双引号是 最常用,使用单引号也可以 (使用哪种,就全部是那种,不要混用,除非必要)
      • 比如, 属性值本身 就含有双引号,则必须使用 单引号,避免冲突
  • 多个属性之间的 间隔

    • 用 空格 分隔
  • 多个属性的 顺序

    • 属性之间,不分 先后顺序
  • 属性的 默认值

    • 任何标签的属性 都有默认值,省略属性,则该 属性取 默认值.

  • 示例1: 设置 水平线的 颜色,宽度.
<hr color="red" width="300" />

在这里插入图片描述


5.2 适用于 大多数标签的属性 (全局 属性)

用途属性名
① 规定元素的 类名class
② 元素唯一的 idid
③ 元素的 行内样式style
④ 元素的 提示信息(额外信息)title

5.3 定义 标签的样式的 属性

  • HTML 单独的标签的样式 使用什么属性来 定义和改变?
    • 使用 标签的 style 属性

6. HTML 输出 规则

  • 算作 一个空格: 所有的 连续的 空格和空行 会怎样处理?
    • 被算作 一个空格
    • 浏览器 移除 多余的 空格和空行

  • 快速查看 网页的代码: 在浏览器的页面中,按下 F12 即可
    • 谷歌浏览器中,按一下 ctrl+shift+c,可以选中指定位置,显示相关代码,相当于 选中下方按钮
    • 在这里插入图片描述

7. 如何进行 HTML 注释? (< !-- 注释内容 -->)

  • <!-- 注释内容 -->

    • 浏览器会显示注释的内容吗?
      • 不会
  • html 注释有什么用?

    • 用于 说明文档代码,纠错
    • 可以一次注释一行 HTML 代码,以搜索错误:
  • 多 注释: 多使用注释标签,是很好的习惯,几个人合作开发网站的时候,注释 有利于理解.

  • 浏览器 不解析: 注释的内容,是给开发者看的,浏览器是不解析的.

  • html 注释的快捷键:

    • 单行注释: ctrl + / (可先 选中要注释的区域)
    • 多行注释: ctrl+shift+ / (可先 选中要注释的区域)
<!-- 此刻不显示图片:
<img border="0" src="pic_mountain.jpg" alt="Mountain">
-->
  • 定义 只在 IE 中执行的 HTML 代码

    • 使用 条件注释
    • 条件注释的开始 如何表示? 和普通注释的区别是什么?
      • <!--[if xxx]>
      • 连字符后面 ,多了个 方括号+ if , [if xxx]>
    • 条件注释的结束 如何表示? 和普通注释的区别是什么?
      • <![endif]-->
      • 连字符前面 ,多了个 !+方括号+ endif,多了个![endif]
  • 示例1: 在 CSDN的博客中,可以看到的 条件注释

<!--[if lte IE 11]>
    <meta name='csdn-browser-upgrade'  content='为了获得更好的写作体验,建议更换<a href="https://www.google.cn/chrome/">Chrome</a>或<a href="http://www.firefox.com.cn/">FireFox</a>最新版浏览器'>
    <![endif]-->

    <!--[if lte IE 11]>
      <script src="https://g.csdnimg.cn/browser_upgrade/1.0.2/browser_upgrade.js"></script>
    <![endif]-->

在这里插入图片描述

<!--[if IE 8]>
    .... some HTML here ....
<![endif]-->
  • 浏览器会显示 被注释的内容吗?
    • 不显示 注释的内容
  • 注释的作用 是什么?
    • 适当的解释说明, 提高 代码可读性

8. CSS 层叠样式表的 分类 (外部,内部,内联)

  • 样式表有哪些分类?
  • 外部 样式表
    • 特点,可以使用在 多个网页
    • 外部样式表的 用途
      • 通过 更改一个文件,可以 来改变 整个站点的外观
    • 使用 外部样式表的方法
      • 使用 <link> 标签,链接 外部样式表.
  • 内部 样式表
    • 内部样式表,可以使用在多个网页吗?
      • 不可以. 使用在 单个网页
    • 如何使用 内部样式表 ?
    • 在网页的 <head> 标签内 通过 <style>标签来使用
  • 内联 样式表
    • 内联样式表 可以使用在其他网页 或者整个网页内吗?
    • 不可以. 只能使用在 单个元素
    • 如何使用内联样式表?
    • 在单个元素中 使用 style 属性
  • 总结:
    • 样式 适用于: (外部,内部,内联) 多个网页 → 单个网页 → 单个元素
    • 使用 样式: <link> 标签 → <style>标签 →style 属性

9. HTML 4 中 被废弃的标签和属性

  • 标签和属性 被废弃是什么意思?
    • deprecated ['dɛprə,ketɪd]
    • 在以后的 HTML 中和 XHTML 中不支持了
  • 被废弃的 标签和属性的 处理方式
    • 最好 不要使用
用途被废弃的标签名
① 文本居中center
② 字体font/basefont
③ 删除线s/strike
④ 下划线u

用途被废弃的属性名
① 文本的 对齐align
背景 颜色bgcolor
文本的 颜色color
  • 被废弃的 标签和属性的 共同点
    • 都是用于 样式的
  • 被废弃的 样式类的 标签和属性 用什么替代?
    • CSS 样式替代

10. 可用于排版的 标签

  • 排版标签
    • 可以和 css 搭配,显示 网页结构,是 网页布局 最常用的标签
    • 标题标签: h1~h6
      • 语义: 作为标题使用,根据重要性,依次递减,从一级标题,到六级标题.一级标题h1最重要,最小到 六级标题 h6.
      • 因为 h1重要程度很高,一个页面 只使用 一个.
    • 段落标签: p
      • 语义: 网页中的文字,有条理的显示出来,分成一个一个的段落.标签内容,一般是文本,也可以包含其他的标签 在里面.
        • 一个段落,使用一个p标签.
      • 段落内容 会自动换行.
    • 水平线 标签: <hr />
      • 语义: 将段落和段落之间隔开,使得文档结构,更加清晰明了.
    • 换行标签: <br />
      • 语义: 在希望 手动换行的地方,强制换行,而不是等 浏览器的自动换行.
    • 块分区 标签: div
      • 语义: 本身 没有语义
    • 行内分区 标签: span
      • 语义: 本身 没有语义

  • 示例1: 使用了 以上的排版的标签的 文档
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8" />
    <title>视频学习的练习网站</title>
    <style>
    body {
        width: 500px;
    }
    span {
        color: green;
    }
    </style>
</head>

<body>
    <h1>哪吒</h1>

    <p>哪吒( nézhā),中国古代神话传说人物,道教护法神。 哪吒信仰兴盛于道教与民间信仰;在道教的头衔为中坛元帅、通天太师、威灵显赫大将军、三坛海会大神等;尊称太子爷、三太子、善胜童子。</p>



    <p>主要记载源于元代宗教神话典籍《三教搜神大全》,活跃于明代神魔系列小说名著《西游记》、《南游记》、《封神演义》等多部古典文学作品。 [3-5]</p>
    <hr />

    <img src="https://gss1.bdstatic.com/-vo3dSag_xI4khGkpoWK1HF6hhy/baike/whfpf%3D360%2C280%2C50/sign=db23091746ed2e73fcbcd56ce13c92bd/c9fcc3cec3fdfc037f1c052bd83f8794a4c22639.jpg" alt="哪吒" />

    <p>-----------哪吒尊称----------</p>
    <!-- 手动换行,使用 br 标签,如果使用 p 标签的话,上下垂直距离 会更大些 -->

    1. 火轮天王
    <br />2. 莲花太子
    <br />3. 哪吒天尊
    <br />4. 天庭三太子
    <hr />

    <div>

        封神—
        <span>元始</span>钦点大先锋,从小洗澡闹海屠龙、天宫隐身殴打龙王,抽筋送父 削肉救母、翠屏显圣 百姓敬拜、反抗父权 顺应天命、保周灭商 打仗杀敌、完成使命 肉身成圣。搜神—奉
        <span>玉帝</span>圣命下凡除魔 灭怪,从小战东海 杀九龙、天门截杀
        <span>龙王</span>、杀魔头石记(石矶)、诛群魔,拜师世尊,伏尽天下各种孽龙和妖魔鬼怪 恶兽,灵山封太师,天庭加封天帅。西游—自幼大闹龙宫水府 踩倒水晶宫 降龙,降伏九十六名妖魔,反父精神,拜
        <span>佛祖</span>干爹,当上天庭太子 成为三坛海会大神,统领神兵荡除邪魔,擒牛魔王,收降地涌夫人等。南游—兵胜华光,缴获三角金砖。家庭美满,从古至今英雄事迹传遍天下 受众欢迎,后于影视化传颂。

    </div>



</body>

</html>

在这里插入图片描述

在这里插入图片描述

10.1 h1~h6 文档内容的 标题

  • 定义标题 使用什么标签?
    • <h1>-<h6>标签
    • 如何 定义最大的标题?
      • 一级标题 <h1>
    • 如何定义最小的标题?
      • 六级标题 <h6>
  • 自动 添加空行=自动换行=独占一行
    • 浏览器 自动在 标题的 前后 添加空行=独占一行
    • 默认情况下,浏览器 会自动在 块级元素前后 添加一个 额外的空行=独占一行
      • p h1等元素前后
  • 能不能为了产生 粗体和大号的文本 而使用标题?
    • 不能.
    • 搜索引擎 会使用标题做什么?
      • 为网页的 结构和内容 编制索引
      • h1主标题,h2次要的,重要性 依次递减.

10.2 hr 水平线

  • 水平线 使用什么标签定义?
    • <hr />
  • 水平线的作用 是什么?
    • 分隔 内容

10.3 p 段落

  • 使用什么标签 定义段落?
    • <p>
  • 段落的作用 是什么?
    • 把文档 分隔成 若干段落
  • 能不能为了实现 换行效果 而插入空段落 ?
    • 不能 . 换行 使用换行标签<br />

10.4 br 换行

  • 使用什么标签 进行换行?
    • <br />
  • 换行标签是一个空元素吗?
    • 是一个 空的元素,没有元素内容.
  • 可以使用 换行标签<br /> 去创建列表吗?
    • 不可以,因为有专门的 列表标签.

11. 文本格式化输出 的标签 (改变 文本外观)

  • 文本格式化
  • 预格式化
  • 计算机输出标签
  • 地址
  • 缩写和首字母缩写
  • 文字的方向
  • 引用标签
  • 删除字效果和插入字效果

11.1 用于 文本格式化 的标签 (b,big,small,em,i,strong,sub,sup,ins,del)

用途标签名
粗体文本b
大号big
小号small
着重文字em
斜体i
加重 语气strong
下标sub
上标sup
插入ins
删除del

  • 被废弃的 文本格式化的标签 有哪些?

  • s / strike / u/ big

    • s / strike是删除线的标签,使用del标签代替
    • u是下划线标签,现在不使用了,因为一般只有超链接才加下划线
    • big大号字标签,也已经被弃用
  • 词汇补充

    • 下标
      • subscript ['sʌbskrɪpt]
    • 上标
      • superscript ['sju:pəskript]
    • 打字机
      • typewriter
    • 变量
      • variable
  • 上标 sup 标签 的内容 高度是多少?

    • 当前文本 中 字符 高度的一半
  • 上标 sup 标签 的内容 的字体和字号是怎样的?

    • 与当前文本 文字的 字体和字号 一样
    • 上标 sup 标签 一般用在哪里?
      • 如,添加脚注,方程式的指数
  • ins 标签 的作用 是什么?

    • 表示 被 插入文档中的文本
  • del 标签 的作用 是什么?

    • 文档中 已被删除的文本
  • 如何描述文档中的 更新和修改?

    • 使用<ins><del>标签

    3<sup>2</sup>=9
    <br />
    <ins>这是临时插入的字 ins</ins>
    <del>我是被删除的字 del</del>

    <b>我是粗体文本b</b>
    <br />
    <big>我是大号字 big,big 标签已经被弃用</big>
    <br />
    <small>我是小号字 small</small>
    <br />
    <em>我是被着重的文字 em</em>
    <br />
    <strong>我是加重语气的文字 strong</strong>
    <br />
    <i>我是斜体字 i</i>
    <br />
    B<sub>2</sub>,2 是下标字 sub
    <br />
    3 <sup>2</sup>,2 是上标字 sup
  • 显示效果
    在这里插入图片描述

显示效果和 推荐使用的 标签

标签显示效果推荐使用
b , strong加粗strong,代表 强调 非常重要的 加粗文本,b只是加粗文本.
i. em斜体em,代表 强调内容的 斜体文本,i只是 斜体文本.
s/strike(已废弃),del删除线推荐使用 del 标签.
u(已废弃),ins下划线推荐使用ins,表示插入的内容
  • 示例1: 使用 文本样式化的标签
    <i>需要斜体显示的文本 ,用 i 标签 </i>
    <br />
    <em>需要强调的内容 , 用 em 标签</em>
    <br />
    <hr />

    <b>需要粗体显示的文本,用 b 标签</b>
    <br />
    <strong>需要强调的 很重要的内容,用 strong 标签</strong>
    <br />
    <hr />

    <s>删除的内容,用 s 标签 (此标签 已废弃)</s>
    <br />
    <del>被删除的内容,用 del 标签(推荐使用)</del>
    <br />
    <hr />

    <u>给内容 加下划线,用 u 标签 (此标签 已废弃)</u>
    <br />

    <ins>表示 插入的内容,用 ins 标签</ins>

在这里插入图片描述


11.2 表示 计算机输出 的标签 (code,samp,kbd,tt,var,pre)

用途标签名
① 定义 计算机的 代码code
② 计算机 代码样本samp
③ 定义 键盘码kbd
打字机代码(等宽的文本)tt
变量var
预格式文本(保留空格,换行)pre

  • 废弃的 计算机输出 标签 有哪些?
    • listing , plaintext , xmp

  • pre 标签 的作用 是什么?
    • ① 文本 保留 空格 和 换行符
    • ② 呈现 等宽字体
    • ③ 制表符 tab 起作用( 但别使用 )
      • 每个制表符 占据多少字符的位置?
        • 8个字符的位置
      • 建议在 <pre> 标签中使用 tab 制表符吗?
        • 不建议.
        • 理由是: 不同的浏览器中,tab的实现 不相同,即浏览器兼容问题
    • ④ 在<pre> 标签 中如何表示 特殊字符?
      • 使用 符号实体 来表示特殊字符,如 "&lt;"代表 “<”
  • <pre> 标签 一般用于哪里?
    • 表示 计算机的 源代码
  • pre中 绝不能 包含的元素 有哪些?
    • 导致 段落断开 的标签
      • 如,标题h1-h6,段落p,地址address
      • 因为这类的标签,会影响预格式化显示,如下例 ↓
  • pre中 能包含的元素 有哪些?
    • 物理样式 和 基于内容的样式 标签
    • 链接a,图像img,水平分割线hr
      <pre>
        咏      鹅

        【作者】骆宾王 【朝代】唐

        鹅鹅鹅,曲项向天歌。
        白毛浮绿水,红掌拨清波。
        <hr />

        &lt;尖括号&gt;
    </pre>


    <pre>
        <h2>咏      鹅</h2>

        【作者】骆宾王 【朝代】唐

        <p>鹅鹅鹅,曲项向天歌。</p>
        <b>白毛</b>浮绿水,红掌拨清波。
        <hr />

        &lt;尖括号&gt;
    </pre>
  • 显示

在这里插入图片描述


11.3 指定 字体样式 的标签 (tt,i,b,big,small)

  • 只是 想要改变 文本的样式效果,推荐使用标签来实现吗?
    • 不推荐.
    • 理由是 : CSS 是专用于表示样式, 应该使用 CSS 来改变样式效果.
      • 等宽,斜体,粗体,大号字,小号字
      • 所以,下列 这些标签,尽量不要使用.
用途标签名
① 打字机代码(等宽的文本)tt
斜体i
粗体文本b
大号big
小号small

11.4 有样式+拥有 确切含义的 短语元素 (em,strong,dfn,code,samp,kbd,var,cite)

  • 短语元素 有什么共同特征?

    • ① 定义的文本 会有特殊样式
    • ② 短语元素 都拥有 确切的含义
  • 可以为了 样式效果 而使用 短语元素吗?

    • 不建议.使用 CSS 来实现样式 才更专业合理.
  • 短语元素

用途标签名
① 把文本 定义为 强调的内容em
语气更强的文本strong
③ 一个定义项目dfn
④ 计算机代码code
代码样本文本samp
键盘码 文本(文本从键盘键入的)kbd
变量(与pre,code标签搭配使用)var
引用(书籍的标题等,定义 对文献的引用)cite

11.5 用于 引用和术语定义的标签 (abbr,acronym,address,bdo,blockquote,q,cite,dfn)

用途标签名
缩写abbr
首字母缩写acronym [ˈækrənɪm]
地址address
文字方向bdo
长引用blockquote
短引用q
引用,印证cite
定义项目dfn

⑴ q,blockquote 表示 引用

  • 引用
    • quotation [kwo’teʃən]
  • 如何表示 短的引用?
    • <q>标签
    • <q>标签 的内容 浏览器 一般会如何显示?
      • 一般会 为 <q> 元素的内容 加引号

这使用了一个q标签

  • 如何表示 长的引用?
    • <blockquote> 标签
    • <blockquote> 标签 的内容 浏览器 一般会如何显示?
      • 浏览器 一般 会对 <blockquote>的元素内容 进行 **缩进 ** 处理
      • 在谷歌,IE,火狐中测试,只有缩进,没有背景色,如下图↓
        在这里插入图片描述

⑵ abbr , acronym 表示 缩写 的标签

  • 如何 表示缩写 或首字母缩写?
    • 缩写 abbr
    • 首字母缩写 acronym
  • 表示 缩写的标签 作用是什么?
    • 能够为浏览器、翻译系统以及 搜索引擎 提供有用的信息

⑶ dfn 定义一个项目 或作为 定义

  • <dfn>标签
  • <dfn> 的用法
    • 区分项目和定义
      • <dfn>包含abbr标签与否
      • <dfn>带不带title属性与否
  • ⑴ 如果设置了 <dfn>元素的 title 属性,则定义项目
    • <p><dfn title="World Health Organization">WHO</dfn> 成立于 1948 年。</p>
  • <dfn> 元素包含 具有标题的 <abbr> 元素,则 abbrtitle 定义项目?
    • <p><dfn><abbr title="World Health Organization">WHO</abbr></dfn> 成立于 1948 年。</p>
  • ⑶ 否则,<dfn> 文本内容 即是项目,并且 父元素 包含定义
    • p><dfn>WHO</dfn> World Health Organization 成立于 1948 年。</p>
  • 看看对 WHO 这个缩写的解释/定义,写在什么位置,dfn 标签的具体用法,在标签的详解博客里看,这个是个概述,不是很详细,大概了解下即可,看得不是很懂没关系。

⑷ address 文档 或文章的 联系信息,如 作者,版权等

  • 使用 address标签
  • address 标签的显示,通常是怎样的?
    • 通常以 斜体显示。
    • 大多数浏览器 会在 此元素 前后添加折行
      <address></address>
    我是 address 标签的内容

⑸ cite 著作的标题 / 作品名

  • 使用什么标签 来定义 作品名?
    • cite 标签
  • 浏览器通常会怎样显示 cite元素的内容?
    • 斜体显示 元素
    • The Scream - 这标题是斜体 by Edward Munch. Painted in 1893.


⑹ bdo 文本的方向

  • bdo标签
    • 又称 双向重写
    • bi-directional override
  • 如何设置方向?
    • bdodir属性实现
  • 有几个方向,分别是什么?
  • 两个方向, 从右向左,从左向右(英文的书写方向,正常情况下,是从左到右的,这里反向了,从右到左,那么第一个字母,就放在了原本的最后的位置)。
    • <bdo dir="rtl">This text will be written from right to left</bdo>

      • 在这里插入图片描述
    • <bdo dir="ltr">This text will be written from right to left</bdo>

      • 在这里插入图片描述

11.6 表示 计算机代码 的标签 (code,kbd,samp,var,pre 标签)

  • 通常,字母的尺寸 和字母之间的间距 是可变的
  • 计算机代码 的字母的尺寸 和字母之间的间距是可变的吗?
    • 不是.是固定的
  • 有哪些标签 支持固定的 字母 尺寸和间距?
    • kbd,samp,code
    • 键盘码/代码样本/代码

  • 表示 计算机代码 的标签
用途标签名称
① 计算机代码文本code
键盘文本kbd
③ 计算机 代码示例samp
④ 变量var
预格式 化文本pre

⑴ kbd 定义 键盘的输入

  • 使用 kbd 标签 定义 键盘的输入
    tab按键,使用了 kbd标签
    <kbd>kbd 键盘输入文本</kbd>
    <p>HTML kbd 元素表示键盘输入:</p>

    <p><kbd>File | Open...</kbd></p>

  • 显示结果:
    在这里插入图片描述

⑵ samp 计算机输出的示例

  • 定义计算机输出 的示例
  • samp 标签
<samp>
demo.example.com login: Apr 12 09:10:17
Linux 2.6.10-grsec+gg3+e+fhs6b+nfs+gr0501+++p3+c4a+gr2b-reslog-v6.189
</samp>

 <pre>
     <samp>
     demo.example.com login: Apr 12 09:10:17
     Linux 2.6.10-grsec+gg3+e+fhs6b+nfs+gr0501+++p3+c4a+gr2b-reslog-v6.189
     </samp>
 </pre>
  • 显示结果: samp 本身是 不保留空格和换行的,可以搭配 pre 预格式化标签
    在这里插入图片描述

⑶ code 计算机代码的示例

  • code 标签
  • code 标签的显示有什么特点?
    • 不保留 多余的 空格和换行
  • 如何保留 多余的空格和换行?
    • 加一个pre 标签,代码放在<pre>
<!-- 不保留空格和换行-->
    <code>

        var person = {
            firstName:"Bill",
            lastName:"Gates",
            age:50,
            eyeColor:"blue"
        }

    </code>
    
<!-- 保留空格和换行-->        
    <code>
        <pre>
        var person = {
            firstName:"Bill",
            lastName:"Gates",
            age:50,
            eyeColor:"blue"
        }
        </pre>
    </code>
  • 显示结果
    在这里插入图片描述

⑷ var 表示变量

  • 使用 var 标签 来表示变量
<p>爱因斯坦的公式:</p>
<p><var>E</var> = <var>m</var> <var>c</var><sup>2</sup></p>
  • 显示结果: 变量,是斜体的
    在这里插入图片描述

★ 小结: 能够改变 文本外观的 标签分类 (基于内容,物理)

  • 能够 改变文本的外观的标签 分为哪两类?
    • 基于内容的样式(content-based style)标签
      • 基于内容的样式 标签 的作用 是什么?
        • 会告诉浏览器 它所包含的文本有特定的含义、上下文或者用法.
        • 特点是: 重 含义,而不是样式.
        • 基于内容 的 带样式的 标签 有哪些?
          • <abbr> (正常)
          • <acronym> (已废弃),用 abbr 替代
          • <cite>(斜体)
          • <code>(等宽)
          • <dfn>(斜体)
          • <em>(斜体)
          • <kbd>(等宽)
          • <samp>(等宽)
          • <strong>(粗体)
          • <var>(斜体)
    • 物理样式(physical style)的标签
      • 物理样式的标签 特点是什么?
        • 重样式,而非含义.
      • 是否推荐 使用 物理样式的标签?
        • 不推荐.
        • 理由: 标签应该 尽可能地 向浏览器 提供上下文信息(含义),并使用基于内容的样式.
      • 物理样式的 标签 有哪些?
        • <b>(粗体)
        • <big>(大号字,已废弃)
        • <i>(斜体)
        • <s> 已废弃(删除线)
        • <small>(小号字)
        • <strike> 已废弃
        • <sub>
        • <sup>
        • <tt>
    <abbr title="world health organization">WHO(abbr 标签,加了 title 属性,会有一个下划线)</abbr>
    <cite>巴黎圣母院 cite 标签</cite>
    <code>code 标签的样式</code>
    <dfn>dfn 标签的样式</dfn>
    <em>em 标签的样式</em>
    <kbd>kbd 标签的样式</kbd>
    <samp>samp 标签的样式</samp>
    <strong>strong 标签的样式</strong>
    <hr />
    
    <b>b 粗体标签的样式</b>
    <big>big 大号字标签的样式,已废弃</big>
    <i>i 斜体标签的样式</i>
    <s>s 删除线标签的样式</s>
    <small>small 小号字的样式</small>
    <strike>strike 删除线的样式,已废弃</strike>
    B <sub>2 sub 标签的样式</sub>
    3 <sup>2 sup标签的样式</sup>
  • 显示结果
    在这里插入图片描述

12. 其他的 html 标签

  • 这里只是了解个大概,标签的详细介绍,请参见 文档开始时的 标签参考列表.

⑴ a 表示 链接(锚)

  • 使用 a 标签
  • a 标签的中文如何称呼?
    • 超链接(hyper text)或者 锚(anchor)
    • 如何区别叫什么?
      • 可以 把提供热点超链接地址 的锚看作“链接
      • 而用于 标记文档的目标部分 的锚称为“
  • a 标签的用途有哪些 ?
    • ① 如何 跳转新页面 ?
      • 使用 a 标签
      • 可分为
        • 外部链接(别的网站)
        • 内部链接(本网站)
    • 锚点定位: 如何 跳转到 页面的其他位置?
      • 使用 a 标签
  • a 标签的内容 浏览器显示是怎样的?
    • 当把鼠标指针 移动到网页中的 某个链接上时,箭头 会变为一只小手
  • a 标签 的使用方式有哪些?
    • ① 如何 创建指向另一个文档(网页) 中的 某位置的链接?
      • href="url#id" (id = 要跳转到的标签的 id 属性值)
    • ② 如何 创建文档(网页)内 的书签 ?
      • a 标签的href="#id" (id = 要跳转到的那个位置的标签的 id 属性值)
    • ③ 如何 创建指向另一个文档(网页) 的链接?
      • href="url"(可以是绝对 url,也可以是 相对 url)
  • a 链接标签 的标签内容 可以是什么?
    • 文本
    • 其他标签

  • 如何定义 被链接的文档 的显示位置?
    • target 属性
 <a href="https://www.baidu.com" id="" target="_blank">百度一下,你就知道</a>

  • 默认是在 当前标签页中打开链接,
    • 如果把链接的 target 属性设置为 "_blank",该链接会在 新的标签页中打开。
  • 显示结果
    在这里插入图片描述

在这里插入图片描述

  • 锚的名称 如何定义?
    • name 属性
  • 书签有没有特殊形式,读者可以看到书签吗?
    • 书签 特殊形式
    • 书签对读者 不可见
  • 如何无需滚动页面 直接 跳转到被 命名的链接 寻找需要的信息?
    • 使用a 标签的name 属性
      • 可以使用 id 属性 来替代 name 属性,命名锚 同样有效
      • 跳转到其他标签使用 目标位置的 name属性,不跳转,
      • 只有跳转到 另一个a标签,使用该a 标签的 name 才行,所以,建议统一使用 id属性的属性值,这样不限制标签。
      • href="#name"href="#id"
        • (此处的nameid 是指要 跳转到的 目标位置的 标签的属性值,不是跳转的起始位置 a的属性值。)

<!--    跳转的起始位置,点击此处开始跳转-->
    <a href="#start">点击此处开始跳转</a>

<!--       跳转到的 目标位置,name 属性,仅限于另一个 a 标签-->
    <p id="start">我是页面的开始位置,测试a 标签的页面跳转</p>
        
    <a name="start">我是要跳转到的位置</a>
    


  • 如何跳转到页面 的某一位置?

    • 跳转到的目标标签的 id属性(建议) or name属性(不建议)
  • 如何跳转 到某指定 id的标签 的位置?

    • 使用 在a标签的href属性来关联
    • 使用什么符号 来关联 指定目标位置id ?
      • #
    • 如何 跳转到 本页面的某位置?
      • a 标签的href="#id"
    • 如何 跳转到 其他页面 的某位置?
      • href="url#id"
      • 将 # 符号和锚名称 添加到 URL 的末端 多个url
  • 如果浏览器 找不到 已定义的命名锚 会怎样?

    • 会定位到文档的顶端,或者无反应,不会有错误发生.
  • 如何 在大型文档 开始位置上 创建目录?

    • ① 为指定位置的 标签,定义 id 属性
    • ② 定义a标签 放到文档的上部
    • ③ 使用a标签的href="#id"链接到指定标签的位置.
    • (例如,百度百科,几乎每个词条 都是采用这样的导航方式)
<!--跳转的开始 点击位置,点了会跳转,必须用 a 标签,相当于目录位置-->
<a href="#tips">有用的提示</a>


<!--要跳转到的位置的 标签的 id,无标签限制,相当于详情位置-->
<h1 id="tips">基本的注意事项 - 有用的提示</h1>
<p id="tips">基本的注意事项 - 有用的提示</p>


<!--  a 使用 name 属性,可以跳转到此处  <a name="start">我是要跳转到的位置</a>-->
<!--  h1使用 name 属性,不会跳转到此处  <h1 name="start">我是要跳转到的位置</h1>-->




⑵ img 表示 图像

  • 使用 <img> 标签 表示图像
  • <img> 是空标签吗?
    • 是的.
  • 空标签
    • 只包含属性
    • 没有闭合标签,自闭合.<img src="" alt="" />
  • 指明 图像的地址
    • 资源地址 src 属性
      • src 指 “source”
      • 属性值 是图像的 资源地址 url
      • 这个图像的存放地址,是相对于 当前.html文件的位置。
  • 图片替代文本: 如何 在浏览器 无法载入图像 时,显示替代的文本?
    • 使用 替换文本 属性 Alt
    • 图像地址有问题等,图像 不显示的时候,显示 图片替代文本,告诉用户 失去的是什么信息.
       <img src="images/四叶草背景.png" alt="四叶草">
  • 显示结果
    在这里插入图片描述
  • 图像资源地址错误时,显示 alt 的属性值
    在这里插入图片描述

⑶ table 表示 表格 (搭配 tr,th,td 标签)

  • <table> 标签
  • 如何表示 表格中 的?
    • tr 标签
      • table row:tr
  • 如何表示 表格的 表头(表格的标题)?
    • th 标签
      • table heading
    • 表头一般显示为什么样式?
      • 一般显示为 粗体
    • 放在tr
  • 如何 表示 行中 的单元格 (数据) ?
    • td 标签
      • table data: td
      • 即,表格数据
    • 空单元格 没有元素内容,浏览器会怎么显示 ?
      • 浏览器 可能无法显示出 这个单元格 的边框(有的浏览器会显示)
    • 如何让 空单元格显示边框?
      • 在单元格中 添加一个 空格占位符,就可以将 边框显示出来
        • <td>&nbsp ;</td>,没有用空格占位 谷歌,火狐,IE都显示了边框。
  • td 单元格 的元素内容 可以是什么?
    • 文本,图片,列表,段落,表单,表格等
  • 如果不定义 边框属性,表格会显示边框吗?
    • 表格将 不显示边框.要显示边框,要定义边框属性.(默认是没有边框的)
  • 表格元素的嵌套顺序是怎样的?
  • table 表格 (框架→行→列(标题/数据单元格))
    • tr 表格行
      • th 表格标题
      • td 表格数据单元格
<!--表格-->
    <table>
        <tr>
            <th>姓名</th>
            <th>性别</th>
        </tr>
        <tr>
            <td>张三</td>
            <td></td>
        </tr>
        <tr>
            <td>李四</td>
            <td></td>
        </tr>
        <tr>
            <td>王五</td>
            <td></td>
        </tr>
    </table>
  • 显示结果: 表格和数据单元格,整体都默认是 没有边框的
    在这里插入图片描述
  • 加个边框属性<table border="1">
  • 显示结果
    在这里插入图片描述

⑷ 列表 (搭配 ul ,ol , dl ,li ,dt,dd 标签)

  • 列表的特点: 使文字内容,或者图表等, 显示得 非常整齐, 有序. (就像 排成方队一样)
  • 列表的 3 个分类
    • 无序,有序,定义
    • 无序列表
      • ul标签
      • 一个项目 的列表
      • 使用 项目符号标记
    • 有序列表
      • ol标签
      • 使用 数字 标记
    • 列表项
      • li标签
      • 定义列表的项目,用于ulol
    • 定义列表
      • dl 标签
        • 项目 和项目的定义(注释)
        • 如何定义列表的术语名?
          • dt
        • 如何 表示术语的描述(定义)?
          • dd

⑸ 表示 框架 (framset,frame,noframes 标签)

  • 什么是框架?
    • 一个页面(文档) 算是一个框架,每个框架 都独立于 其他的框架
  • 如何 在一个窗口 显示多个页面
    • 使用 框架集 标签 frameset
  • 如何 分割框架 和 定义分割的行列?
    • frameset
    • <frameset cols="25%,75%"> </frameset>
  • 如何指定 每个框架中 的具体页面 ?
    • 框架标签 frame
  • 如何 禁止用户拖动边框 改变大小?
    • <frame> 标签中加入:noresize="noresize"
  • 对于 不支持框架标签的浏览器 如何进行兼容处理?
    • 添加 <noframes> 标签
  • 能将 <body></body> 标签与 <frameset></frameset> 标签同时使用吗?
    • 不能.
  • <noframes> 标签要显示文本,还需要其他标签吗?
    • 需要.必须 嵌套于 <body></body> 标签内
  • 框架相关的标签 嵌套顺序 是怎样的?
    • <frameset>
      • <frame>
    • <noframes>
      • <body>
        • 浏览器无法处理框架的提示
  • 如下,两列的框架

<frameset cols="25%,75%">
   <frame src="frame_a.htm">
   <frame src="frame_b.htm">
</frameset>
<noframes>
<body>您的浏览器无法处理框架!</body>
</noframes>
  • 提示: framset,frame,noframes 三个框架标签,在 html 5 中已经被废弃。

⑹ iframe 表示 内联框架

  • 如何在 网页内 显示网页?(类似画中画的感觉)
  • iframe 标签
  • iframe 的语法
    • <iframe src="URL"></iframe>
    • srciframe 内联框架中 默认显示的页面
  • 如何定义 是否显示 iframe 周围的边框?
    • frameborder 属性
  • 如何让 a 标签 指定链接的网页 显示在iframe的位置?
    • <a> 标签的 target 属性值 = <iframe>name 属性值
    • a-target = iframe-name,
    • 点击a标签的内容,在iframe原本的位置,会显示的 a-href 指向的网页,覆盖掉初始的 iframe-src 原本指向的页面。

<iframe src="demo_iframe.htm" name="iframe_a"></iframe>
<p><a href="http://www.w3school.com.cn" target="iframe_a">W3School.com.cn</a></p>

⑺ form 表示 表单和表单元素

  • 如何 搜集 用户输入 ?
    • 使用 <form> 标签
  • 表单元素 有哪些 ?
    • 不同类型的 input 元素、复选框、单选按钮、提交按钮等等
  • password 字段中 的字符 在浏览器中会怎样显示?
    • 一般会被做 掩码处理(显示为 星号或实心圆
  • 什么是 表单处理程序?
    • (form-handler)
    • 通常是 包含 处理输入数据 的脚本的 服务器页面
  • 如何 省略了 提交按钮的 value 属性 会怎样处理?
    • 该按钮 将获得 默认文本
  • 如果 老式 web 浏览器 不支持的输入input类型 会怎样处理?
    • 会被视为 输入类型 text

  • Input 属性
  • 如何 规定输入字段的 初始值 ?
    • 使用 <input> 标签的value 属性
  • 如何 规定输入字段为 只读(不能修改)?
    • 使用 readonly 属性
  • 如何 禁用 输入字段 ?
    • 使用 disabled 属性
  • 被禁用的元素 一般会有什么特征 ?
    • 不可用
    • 不可点击
    • 不会被提交

⑻ head 文档的头部

  • 所有的头部元素 放在什么标签中?
    • head 标签
  • 可以放在head 标签中 的标签 有哪些?
    • meta
    • title
    • link
    • script
    • style
    • base
  • 如何 表示文档的标题?
    • 使用 title 标签
  • title 标签 是必需的吗?
    • 是的,文档中不能少的标签
  • title 标签 的内容 一般有什么用?
    • ① 浏览器 工具栏的 标题
    • ② 页面 被收藏时的标题
    • 搜索引擎 结果中的 页面标题

  • 如何 指定 页面中的所有链接默认链接地址默认打开的目标位置?
    • base 标签

<head>
	<base href="http://www.w3school.com.cn/images/" />
	<base target="_blank" />
</head>


  • 如何 指明 文档 与外部资源 之间的关系?
    • link 标签
      • 如何 链接 外部样式表 ?
        • 使用 link 标签

  • 如何 定义 页面的 样式 ?
    • style 标签

  • 如何表示 关于 页面的数据 的信息?
  • <meta> 标签,元数据标签.
    • 什么是元数据?
      • 关于数据 的数据 (文档本身是数据,关于网页数据的数据)
  • <meta> 标签的内容 显示在 页面上吗?
    • 不会,但是对于机器 是可读的.
  • <meta> 元素的用途 有哪些?
    • 如何表示 对页面的描述?
      • <meta> 元素
    • 如何定义 关于页面的 关键词?
      • <meta> 元素
    • 如何描述 文档的 作者?
      • <meta> 元素
    • 如何 定义 最后修改时间?
      • <meta> 元素
  • 一些搜索引擎 会利用 什么来索引页面?
    • <meta> 元素的 namecontent 属性来索引 页面
  • <meta> 标签的 什么属性 是描述 页面的 内容的?
    • namecontent 属性
      • 两个属性 搭配使用,content 属性值 关联 name的属性值
下面的 meta 元素定义 页面的 描述:

<meta name="description" content="Free Web tutorials on HTML, CSS, XML" />

下面的 meta 元素定义 页面的 关键词:

<meta name="keywords" content="HTML, CSS, XML" />



⑼ script 使用脚本

  • 如何定义 客户端脚本,比如 JavaScript ?
    • 使用 script 标签
      定义脚本 有哪几种方式?
      • ① 在 script 标签 中 ,包含 脚本语句
      • ② 使用标签的 src 属性, 指向 外部脚本文件
  • 无法使用脚本时的 , 如何设置 替代内容 来提示?
    • noscript 标签
  • 什么时候会 显示 noscript 元素中 的内容?
    • 在浏览器 禁用脚本时,或浏览器 不支持 客户端脚本,进行提示。

  • 当 老式的浏览器 不识别 <script> 标签,并把 <script> 标签 所包含的内容 将以文本方 显示页面上时,该如何处理 ?
    • 脚本隐藏注释标签 当中
      • 老的浏览器忽略 被注释内容
      • 新的浏览器读取这些脚本 并执行它们,即使代码 被嵌套在注释标签内.
  • 如何 注释脚本 👇?
    • <script> 标签中的 JavaScript 代码 注释 , 在结束的连字符前 加两个斜杠 //
      • <!-- document.write("Hello World!") //-->
JavaScript:
<script type="text/javascript">
<!--
document.write("Hello World!")
//-->
</script>

VBScript:
<script type="text/vbscript">
<!--
document.write("Hello World!")
'-->
</script>

13. 响应式 Web 设计 (RWD,尺寸可变)

  • 响应式 Web设计的英文和英文缩写是什么?
    • Responsive Web Design
      • RWD (美 /rɪˈspɑːnsɪv/),响应式网页设计
  • 响应式 web 设计有什么特点?
    • 网页的 尺寸可变
    • 平板和移动设备 是必需的
  • 如何 创建响应式布局?
    • 自己创建
    • 使用 bootstrap

14. 实体

14.1 什么是实体,实体的意义是什么? (预留 字符/特殊字符)

  • 字符实体的英文是什么 ?

    • character entities
      • [ˈentitiz]
  • 为什么 HTML 中的 预留字符 必须 被替换为 字符实体 ?

    • 因为 浏览器会 误认为 它们 是标签
    • 如,不能使用 小于号(<)和大于号(>),这两个一般用于表示 标签.
  • 字符实体的格式 一般是怎样的?

    • ① &entity_name; 名字
    • ② &#entity_number; 数字
  • 如果想 显示小于号,应该怎样写?

    • 必须写:&lt;&#60;
  • 使用实体名 和实体数字 有什么区别 ?

    • ① 使用 实体名 易于记忆
    • ② 实体名 区分大小写
    • ③ 浏览器也许 并不支持 所有实体名称(对实体数字的支持却很好

14.2 常用的字符实体

  • 字符实体,主要用于 .html 网页文件中 的 预留字符和特殊字符
    • 目的: 避免和 html 本身标签代码冲突.
显示结果描述实体名称实体编号
 空格&nbsp ;&#160 ;
<小于号&lt ;&#60 ;
>大于号&gt ;&#62 ;
&和号&amp ;&#38 ;
"引号&quot ;&#34 ;
撇号&apos ; (IE不支持)&#39 ;
&cent ;&#162 ;
£&pound ;&#163 ;
¥日圆&yen ;&#165 ;
欧元&euro ;&#8364 ;
§小节&sect ;&#167 ;
©版权&copy ;&#169 ;
®注册商标&reg ;&#174 ;
商标&trade ;&#8482 ;
×乘号&times ;&#215 ;
÷除号&divide ;&#247 ;

  • 日元和人民币符号的区分
    • 一横,日元,两横,人民币,但是,在很多字体中,把这个统一显示为两横了,所以,很容易搞混淆
    • 国际标准化组织,为了对人民币符号与日元符号,加以区分,将日元记为 JPY¥,将人民币记为 CNY¥

在这里插入图片描述

点此 查看更多 实体 和 实体名缩写来源


15. URL

15.1 什么是 url ?

  • url 是什么意思?
    • Uniform Resource Locator
    • 统一 资源 定位
  • url 统一资源定位器的语法 是怎样的 ?
    • scheme://host.domain:port/path/filename
      • 服务类型://主机.域名:端口号/路径/文件名
    • scheme [skim] 是什么意思 ?
      • 定义因特网服务 的类型(传输协议)
        • 最常见的因特网服务类型是什么?
          • http
    • host 是什么意思?
      • 定义 主机
        • http 的默认主机是 什么?
          • www
    • domain 是什么意思?
      • 定义因特网 域名
      • 比如 w3school.com.cn
    • :port 是什么意思 ?
      • 定义主机上的 端口号
        • http 的默认端口号 是什么?
          • 80
    • path 是什么意思?
      • 定义服务器上的 路径
      • (如果省略,则文档必须位于网站的根目录中)。
    • filename 是什么意思 ?
      • 定义文档/资源的 名称
  • http://www.w3school.com.cn/html/html_urlencode.asp

  • 最流行的 scheme 服务类型 有哪些 ?
Scheme(服务类型,传输协议 )访问用于
http超文本 传输协议以 http:// 开头的 普通网页不加密
https安全 超文本 传输协议安全网页加密 所有 信息交换。
ftp文件 传输协议用于将文件 下载 或上传至网站。
file计算机上的 文件。

15.2 URL 编码

  • url 是不是 只能包含 ASCII 字符集?

    • 是的.为什么?
    • ASCII 是什么意思 ?
    • 美 /ˈæski/
    • abbr. 美国 信息交换 标准码(American Standard Code for Information Interchange)
  • 不属于 ASCII 字符集的字符 要如何处理?

    • 要转换为 有效的 ASCII 格式
    • HTML 和 XHTML 用 标准的 7 比特 ASCII 代码 在网络上 传输数据
  • 7 比特 ASCII 代码可提供 128 个不同的 字符值

    • 任何特殊的字符(那些不是简单的七位 ASCII,如汉字)将以百分符%用十六进制编码,当然也包括象 =,&;,% 这些特殊的字符。
    • 其实 url 编码就是一个字符 ascii 码的十六进制。只不过稍微有些变动,需要在前面加上“%”。
  • 如何替换 非 ASCII 字符?

    • URL 编码 使用 “%” ,其后跟随 ASCII 编码中的 两位的 十六进制数 来替换→%十六进制数
  • URL 能包含空格吗 ?

    • 不能. URL 编码 通常使用 + 来 替换空格
  • 点击查看,ASCII 字符集的存在原因 和 ASCII 编码表

    • 在计算机中,所有的数据,在存储和运算时,都要使用二进制数表示(因为计算机用 高电平和低电平,分别表示 1和0)
    • 统一规定了,常用符号 用哪些 二进制数 来表示,即 编码,即 ASCII 存在的原因
    • 查看 url 编码
    • url 编码详解
  • url 编码示例

ASCII ValueURL-encode
0%30
1%31
2%32
3%33
4%34
5%35
6%36
7%37
8%38
9%39
:%3a
;%3b
<%3c
=%3d
>%3e
?%3f
@%40
A%41
B%42
Y%59
Z%5a
a%61
b%62
y%79
z%7a

  • 0-9 的数字,对应的 url 编码: %30~%39
    • 因为对应的 ASCII 十六进制是 0x30~0x39
    • 点击查看 0x开头的数字,十六进制数的详解
    • 0x 开始的数据,表示 16 进制
      • 0 是数字 0,不是字母 O
      • 16 进制,就是逢 16 进 1,但我们只有 0~9 这十个数字,所以我们用 A,B,C,D,E,F 这六个字母来分别表示 10,11,12,13,14,15。字母,不区分大小写。
      • 一个十六进数 0x2AF5, 那么如何换算成 10 进制呢?
        • 5 * 16^0 + F * 16^1 + A * 16^2+2 * 16^3 = 5 * 1+15 * 16+ 10 * 16 * 16 + 2 * 16 * 16 * 16=10997

在这里插入图片描述

在这里插入图片描述

  • 大写字母:%41~%5a
  • 小写字母:%61-%7a
  • 常见 ASCII 码的大小规则:0~9<A~Z<a~z
    • 数字,比字母要小。如 “7”<“F”;
    • 数字 0 比数字 9 要小,并按 0到9 顺序递增。如 “3”<“8” ;
    • 字母A 比字母Z要小,并按 A到Z 顺序递增。如“A”<“Z” ;
    • 同个字母的大写字母,比小写字母要小 32(指的是 ASCII 编码表中的十进制)。如“A”<“a” 。

16. 如何表示 颜色 ?

  • 颜色 是如何组成的?
    • 红绿蓝 三原色 混合而成
  • 如何 定义颜色?
    • ① 由一个 十六进制 符号来 定义
    • ② 由红、绿和蓝色 的值 (RGB
    • ③ 颜色名
  • 十六进制颜色
    • 十六进制中 每种颜色的 最小值 是什么?
      • 0(十六进制:#00)
    • 十六进制中 每种颜色的 最大值 是什么 ?
      • 255(十六进制:#FF)
      • 16 进制转换成 10进制:ff=15×16^1 + 15× 16^0= 240+15=255
  • 仅 有多少种 颜色名 被 W3C 的 HTML4.0 标准 所支持 ?
    • 16 种
      • aqua, black, blue, fuchsia, gray, green, lime, maroon, navy, olive, purple, red, silver, teal, white, yellow
  • 如果除了 16 种颜色名 想使用其它颜色 的话,该怎样处理?

17. XHTML

17.1 什么是 XHTML ? (可扩展 超文本标记语言)

  • xhtml 的 英文全称是什么 ?
    • EXtensible HyperText Markup Language
      • [ɪk’stɛnsəbl]
  • xhtml 是什么意思 ?
    • ① 以 XML 格式 编写的 HTML.
      • 正确标记 格式良好的 HTML 版本
    • 可扩展 超文本标记语言
      • 与 HTML 4.01 几乎是相同的
    • ③ 是 2001 年 1 月 发布的 W3C 推荐标准
      • XHTML 得到所有 主流浏览器的支持
  • XML 是什么 ?
    • 可扩展标记语言
    • 一种 必须正确标记格式良好标记语言

17.2 HTML 和 XHTML 有什么区别?

  • 文档结构
    • 6个 必须有:
      • ① 文档类型
        • XHTML DOCTYPE 是强制性的
          • 必须进行 XHTML 文档类型声明 (html 中一般也要声明的)
      • <html>xmlns 属性 (xml 命名空间)
        • <html> 中的 XML namespace属性 是强制性的
          • 使用 <html> 中的 xmlns 属性 为文档规定 xml 命名空间
          • <html xmlns="http://www.w3.org/1999/xhtml">
      • ③ 4 个必需标签
        • <html><head><title> 以及 <body>(html 中也必须要有的)
  • 元素语法
    • XHTML 元素 必须 正确嵌套
    • XHTML 元素 必须始终 关闭
    • XHTML 元素名 必须 小写
    • XHTML 文档 必须有 一个根元素
  • 属性语法
    • XHTML 属性名必须 使用小写
    • XHTML 属性值必须 用引号包围
    • XHTML 属性 必须 有属性值
  • 以上,可以看出 xhtml 的格式,更加的严谨一些,其他方面,其实区分并不是很大。

17.3 如何 从 HTML 转换到 XHTML ?

  • ① 向每张 页面的第一行 添加 XHTML <!DOCTYPE> 文档声明
  • ② 向每张页面的 根标签 html 标签添加 xmlns 属性
  • ③ 把所有 标签名,属性名 改为小写
  • ④ 关闭 所有 空元素
  • ⑤ 为所有属性值 加引号

18. HTML5

18.1 HTML5 是什么?

  • HTML5 有哪些特点 ?
  • 新标准,丰富 web 内容,新语义,图形,多媒体元素,跨平台
    • ① 最新的 HTML 标准 版本
    • ② 专门为承载丰富的 网页内容而设计的
    • 无需额外 插件
    • ④ 新的 语义、图形以及多媒体元素
    • ⑤ 新元素和新的 API
    • ⑥ 简化了 网页应用程序 的搭建
    • ⑦ HTML5 是 跨平台的
      • 被设计为在 不同类型的硬件(PC、平板、手机、电视机等等)之上运行

  • HTML5 中 默认的字符编码 是什么?
    • UTF-8 编码
    • utf-8 编码详解
      • (8 位元,Universal Character Set/Unicode Transformation Format),统一码转换格式是针对 Unicode(n. 统一的字符编码标准) 的一种 可变长度 字符编码。
      • utf-8 可以用来表示 Unicode 标准 中的任何字符,而且其编码中的 第一个字节 仍与 ASCII 相容,使得原来处理 ASCII 字符的软件无须或只进行少部份修改后,便可继续使用。
      • 因此,utf-8 逐渐成为电子邮件、网页及其他存储或传送文字的应用中,优先采用的编码。
        • Unicode,为了统一所有文字的编码,Unicode 应运而生。Unicode 把所有语言都统一到一套编码里,这样就不会再有 乱码问题了。
      • UTF 后的数字,代表 编码的最小单位,如 UTF-8 表示最小单位 1字节(=8 bits),所以它可以使用 1、2、3字节 等进行编码,UTF-16 表示最小单位 2字节,所以它可以使用 2、4字节进行编码。
  • HTML5 新的属性语法有哪些 ?
    • 允许 4 种不同的 属性语法
      • 简写属性(不写属性值)
        • Empty
      • 无引号
        • Unquoted
      • 双引号
        • Double-quoted
      • 单引号
        • Single-quoted

  • HTML5 的新特性 有哪些 ?
  • 新语义,新表单控件,图像,多媒体,新API
    • ① 新的 带语义的标签
      • 比如 <header>, <footer>, <article>, and <section>
    • ② 新的 表单类的 控件
      • 比如 数字、日期、时间、日历和滑块。
    • ③ 强大的 图像支持
      • <canvas> 和 <svg>
    • ④ 强大的 多媒体支持
      • <video> 和 <audio>
    • ⑤ 强大的 新 API
      • 比如用 本地存储 取代 cookie。

  • html5 中 被删除的标签有哪些 ?
    • <acronym>首字母缩写标签
    • <applet>小程序标签
    • <basefont> 基础字体
    • <big> 大号字
    • <center> 居中
    • <dir> 目录
    • <font> 字体
    • 框架类
      • <frame> 框架
      • <frameset> 框架集
      • <noframes> 不支持时框架的提示
    • <strike> 删除线
    • <tt> 打字机 等宽字体
  • 在 webstorm 软件中测试,确实都提示 已经废弃了
    在这里插入图片描述

18.2 HTML5 浏览器支持

  • 现代浏览器 对 HTML5 的支持如何?
    • 都支持 HTML5
  • 所有浏览器,无论新旧,如何处理 识别不了的元素 ?
    • 自动把 未识别元素 当做 行内元素 来处理
  • HTML5 定义了几个 新的语义 HTML 标签 ?
    • 8个
    • header, section, footer, aside, nav, main, article, figure
  • 新的语义元素 有什么共同点 ?
    • 都是 块级元素
  • 对于这些块级的 新语义元素, 如何 确保 老式浏览器中正确的行为 ?
    • 把 CSS display 属性设置 为 block
    • header, section, footer, aside, nav, main, article, figure { display: block;
      }

18.3 如何把 HTML4 网页 变成 HTML5 网页 ?

  • 如何 在不破坏 原始内容和结构 的情况下 把 HTML4 网页 变成 HTML5 网页 ?

  • 换标签

    • 把 一些 div 标签 换成 HTML5 中 相对应语义的标签
  • ② 修改 文档类型声明 为 HTML5

    • HTML4 文档类型声明
      • <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
      • 修改为 HTML5 doctype:
        • <!DOCTYPE html>
  • 更改为 HTML5 编码 meta 标签

    • 修改编码信息,从 HTML4:
      • <meta http-equiv="Content-Type" content="text/html;charset=utf-8">
    • 改为 HTML5:
      • <meta charset="utf-8">
  • ④ 添加 条件注释,解决 IE 兼容问题. 添加 shiv

    • 所有现代浏览器都支持 HTML5 语义元素。
    • 此外,需要告诉 老式浏览器 如何处理“未知元素”。
      • 为 IE 支持而添加的 shiv
      • shiv 是什么意思 ?
      • 一种针对 IE 解决兼容的方案名称
  • shiv 代码如下 :

    <!--[if lt IE 9]>
    <script src="http://html5shiv.googlecode.com/svn/trunk/html5.js">
    </script>
    <![endif]-->


  • HTML4 中 可以替换成 对应语义的 HTML5 标签有哪些 ?
典型的 HTML4典型的 HTML5
<div id="header"><header>
<div id="menu"><nav>
<div id="content"><section>
<div id="post"><article>
<div id="footer"><footer>

18.4 HTML5 样式指南和代码约定 有哪些?

  • 如何 保持样式智能、整洁、纯净、格式良好 ?
    • 使用 格式良好的 “近似 XHTML 的”语法
  • 使用 正确的文档类型
    • 在文档的首行 声明文档类型
      • <!DOCTYPE html>
    • 如果坚持小写标签,那么可以使用:
      • <!doctype html>

  • 标签名 必须小写
    • HTML5 允许 在标签名中使用 混合大小写字母
      • 不建议 大小写混合.
        • 因为小写更起来更纯净, 小写更易书写
  • 标签 必须关闭
    • 是否需要关闭的区别 ?
      • 在 HTML5 中
        • 不必 关闭所有元素.在 HTML5 中,关闭空标签 是可选的.
      • 在 XHTML 和 XML 中
        • 空标签中的斜杠(/)是必需的 , 关闭标签是必须的.
    • 为什么 写代码时. 必须关闭标签. 空标签 也要关闭 ?
      • 这样代码正确性更高,更易读.
      • 使 XML 软件也可以访问页面
  • 属性名 必须小写
    • HTML5 允许大小写混合的属性名。
    • 为什么建议 属性名必须小写 ?
      • 小写属性名 看起来更纯净 , 代码干净利落。
      • 小写属性名 更易书写。

  • 属性值 必须加引号
    • HTML5 允许 不加引号的属性值。
    • 为什么建议 属性值必须加引号 ?
      • 如果属性 有属性值 , 则必须 使用引号
      • 加引号的值更易阅读
      • 混合的样式 ,属性值 一会加引号,一会不加,代码不干净利落.
  • 属性的等号 两边不要有空格
    • 属性等号两边 的空格 是合法的吗?
      • 是合法的.
      • <link rel = "stylesheet" href = "styles.css">
    • 为什么建议 等号两边 不要有空格 ?
      • 代码更精简 , 更易阅读,而且多打两个空格 更繁琐,更浪费时间。
  • ⑺ 为 img 标签 设置 必需的属性
    • 图像<img>标签,必须 使用 alt 属性
      • 为什么 alt 属性 对<img>标签是必须的 ?
      • 当图像无法显示时,这个属性会告诉用户 丢失图片的相关信息。
      • <img src="html5.gif" alt="HTML5" style="width:128px;height:128px">
    • 图像<img>标签,必须 设置尺寸: 宽高
      • 为什么一定要设置图片的宽高 ?
        • 可以 减少闪烁。
        • 浏览器 会在图像加载之前 为图像 预留空间
      • <img src="html5.gif" alt="HTML5" style="width:128px;height:128px">

  • 代码行 不要太长
    • 为什么 一行代码不要太长?
      • HTML 编辑器中,通过左右滚动 来阅读 HTML 代码很不方便,左右拖动看代码,很麻烦。
    • 一行代码 建议多少字符以内 ?
      • 不超过 80 个字符

  • 合理 使用空行和缩进

    • 能毫无理由地增加空行 ?
      • 不建议.
    • 为什么要 增加空行来分隔 大型或逻辑代码块 ?
      • 为了提高 代码的可读性
    • 一般缩进几个空格 ?
      • 两个空格。请勿使用 tab键,因为不同的浏览器,解析tab 键,可能会是不同的空格数,会造成浏览器兼容问题。
  • 必须的标签 : <html><body> <head> <title> 标签

    • 在 HTML5 标准中,能够省略 <html> 标签和 <body> 标签吗 ?
      • 可以,但最好不要省略,会让浏览器产生错误。
    • 什么是 文本的根标签 ?
      • <html> 标签
    • 一般在 哪个标签中 指明 页面语言 ?
      • 根元素 <html>
      • <html lang="en-US">
        • lang:language 的缩写
    • 为什么 要指明 网页的语言 ?
      • 对于 可访问应用程序(屏幕阅读器)和搜索引擎 有用
    • 为什么 HTML5 标准中 可以省略 <html><body>,实际写代码时 却不能省略 ?
      • 省略了会让 DOM 和 XML 软件崩溃
      • 在 老式浏览器中 会产生错误
  • 能省略 <head>吗?

    • 在 HTML5 标准中,<head> 标签也可以 被省略
    • 默认地,浏览器会把 <body> 之前的所有元素添加在哪里 ?
      • <head> 标签 中
    • 虽然通过省略 <head> 标签,可以降低 HTML 的复杂性,但是不建议省略.不省略,代码更易读和规范.

  • <title> 元素在 HTML5 中是必需的

    • title标签的内容 一般用在哪里?
      • 用户收藏网页时会使用
      • 浏览器窗口的标题也会显示 网页的主题
  • 为什么 在文档中 语言和字符编码 越早指明 越好?

    • 确保 恰当的解释
    • 正确的 搜索引擎索引
  • 在哪个标签中 指明 网页的字符编码 ?

    • <meta>标签 中的 charset 属性
  • 必须的标签 的嵌套关系

    • <!DOCTYPE html>
    • <html lang="en-US">
      • <head>
        • <meta charset="UTF-8">
        • <title>
      • <body>
<!DOCTYPE html>
<html lang="en-US">
<head>
  <meta charset="UTF-8">
  <title>HTML5 Syntax and Coding Style</title>
</head>


  • 文件名 小写

    • 大多数 web 服务器(Apache、Unix)对 文件名的大小写 敏感
      • 不能以 london.jpg 访问 London.jpg。
    • 一些 web 服务器(微软,IIS)对 大小写 不敏感:
      • 能够以 london.jpg 或 London.jpg 访问 London.jpg。
    • 如果使用 混合大小写,为什么 必须保持 高度的一致性 ?
      • 因为 如果从对大小写不敏感的服务器 转到一台对大小写敏感的服务器上,这些小错误 将破坏网站
    • 为什么建议 小写文件名 ?
      • 避免 因为 不同服务器 大小写敏感不同,而造成 网站的错误。
  • 文件扩展名的规范 有哪些 ?

    • HTML 文件: 应该使用 扩展名 .html(而不是 .htm)。
    • CSS 文件: 应该使用扩展名 .css
    • JavaScript 文件: 应该使用扩展名 .js

  • 样式表
    • 网页中 如何 链接样式表(type 属性不是必需的):
      • <link rel="stylesheet" href="styles.css">
      • <link>标签 的rel属性 和 href 属性
body {
 background-color: lightgrey;
 font-family: "Arial Black", Helvetica, sans-serif;
 font-size: 16em;
 color: black;
}
  • CSS 样式表的格式
  • CSS 样式中 , 空格 一般用在什么位置 ?
    • 开括号之前(选择器后面),
    • 冒号之后(属性和属性值之间的),
    • 逗号之后(属性值和属性值)
  • 开括号与选择器 的位置关系 一般怎么安排?
    • 在同一行
  • 属性之间的分隔符: 在每个属性值对结束之后 使用什么符号 ?
    • 分号 ;(属性和属性之间的分隔),写完一个属性,要用分号结尾,再写下一个属性。
  • 属性值之间的分隔符
    • 一个属性,有多个属性值,属性值之间,使用逗号分隔,这个逗号后面,还可以加一个空格显得不拥挤。
  • 属性值对 前面 一般缩进几个字符?
    • 2个
  • 属性值 什么时候 使用引号 ?
    • 属性值 包含空格时 ,属性值 使用引号 ;
  • 闭括号 一般放在哪里 ?
    • 新的一行,之前 不用空格
body {
  background-color: lightgrey;
  font-family: "Arial Black", Helvetica, sans-serif;
  font-size: 16em;
  color: black;
}

  • 如何在 HTML 中加载 外部脚本 js 文件 ?
    • <script> 标签 的 src 属性 指明 js 文件的地址。(type 属性不是必需的)
      • <script src="myscript.js">

  • HTML 如何 进行注释 ?
  • 短注释 应该 在单行中 书写
    • 并在 <!-- 之后 增加一个空格
    • --> 之前 增加一个空格:
  • 长注释,跨越多行
    • 应该 通过 <!---->独立的行中 书写

<!-- This is a comment,短注释 -->

<!-- 
  长注释 .This is a long comment example. This is a long comment example. This is a long comment example.
  This is a long comment example. This is a long comment example. This is a long comment example.
-->

19. HTML5 中 新增的标签

  • 语义标签
  • 语义标签 是什么意思 ?
    • 拥有语义的标签 , 会清楚地向 浏览器和开发者 描述 标签内容的意义,有确切的含义 .
  • 语义标签和非语义标签 有什么区别 ?
    • 非语义标签的例子:<div><span>
      • 无法提供 关于标签的内容的信息,只是个容器.
    • 语义标签的例子:<form>、<table> 以及 <img>
      • 清晰地 定义标签的内容,有确切含义 。一看到标签,就能确定 标签里面包含的是什么类型的 标签内容。

⑴ section 文档的节

  • 如何 将网站首页 划分为 简介、内容、联系信息 等节 ?
    • 使用 <section> 标签
  • 节(section)是什么意思 ?
    • 有主题的 内容组,通常 具有标题 .
      • 一组内容,有一定的主题.

⑵ article 表示 独立的 自包含内容

  • 如何 规定 独立的 自包含内容 ?

  • 使用 <article> 标签

  • <article> 标签 的内容 有什么特点 ?

    • ① 可独立阅读
      • 可以 独立于 网站其他内容 进行阅读
    • ② 文档有其 自身的意义
  • 论坛, 博客 ,新闻 一般使用什么 标签 ?

    • 相当于 需要独立阅读的内容, 使用 <article> 元素 .
  • 如何 定义 完整的 相关元素 自包含块 ?

    • 使用 <article> 标签
  • 如何 定义为 相关元素块 ?

    • <section> 标签
  • <article> 元素 和 <section> 元素 可以嵌套吗 ?

    • 必要时,两者可以互相嵌套

⑶ header 为文档或节 规定页眉

  • 如何 为 文档或节 规定页眉 ?
    • 使用 <header> 页眉元素
  • 使用什么标签 作为 介绍性内容 的容器 ?
    • 使用 <header> 页眉元素
      • 在电子文档中,一般称 每个页面的顶部区域为页眉。
      • 常用于显示文档的附加信息,可以插入时间、图形、公司微标、文档标题、文件名或作者姓名等。
  • 一个文档中 可以有 多个 <header> 页眉元素 吗 ?
    • 可以 .

⑷ footer 为文档或节 规定页脚

  • 如何 为 文档或节 规定 页脚 ?
    • 使用 <footer> 元素
  • 提供 有关其包含元素的 信息 一般使用什么标签 ?
    • 使用 <footer> 元素
  • 包含 文档的作者、版权信息、使用条款链接、联系信息等 一般使用什么标签 ?
    • 使用 <footer> 页脚 元素
      • 页脚,是文档中 每个页面的底部的区域
      • 在电子文档中,常用于显示 文档的附加信息,可以在页脚中插入文本或图形,例如,页码、日期、公司徽标、文档标题、文件名或作者名等,这些信息通常打印在文档中每页的底部。
  • 可以在 一个文档中 使用多个 <footer> 元素 吗 ?
    • 可以 .

⑸ nav 表示 导航链接 的集合

  • 如何表示 导航链接 的集合 ?
    • 使用 <nav> 元素
  • 一般 表示大型的 导航链接块 使用什么标签 ?
    • 使用 <nav> 元素
  • 是不是 文档中 所有链接 都应该位于 <nav> 元素中 ?
    • 不是 .

⑹ aside 表示 页面主内容之外的 某些内容

  • 如何表示 页面主内容之外的 某些内容(比如侧栏)?
    • 使用 <aside>标签
    • 与周围内容 相关

⑺ figure 组合 图片和标题

  • 如何 为图片 添加可见的解释 ?

    • 使用 图片标题(caption)<figcaption> 元素
  • 如何 组合 图片和标题 ?

    • 使用 <figure> 元素
    • 美 /ˈfɪɡjər/,n. 图形
  • 如何 表示图像?

    • <img> 元素
  • 如何表示 图片的标题 ?

    • <figcaption> 图片标题 元素
  • 组合 图片和标题 的嵌套关系

    • <figure> 组合图像
      • <figcaption> 图像标题
        • figcaption” 元素的位置 该如何处理?
          • 应该被置于 “figure” 元素的 第一个或最后一个子元素 的位置。因为是标题,要么放在图像的最上方,要么放在图像的最下方,就是这个意思。
      • <img /> 图像
<!--    组合图像和图像标题-->
    <figure>
        <figcaption>四叶草</figcaption>
        <img src="images/四叶草背景.png" alt="四叶草" width="50" height="50">
    </figure>

  • 显示结果
    在这里插入图片描述


20. HTML 图形

⑴ canvas 在网页上 绘制图形

  • 如何 在网页上 绘制图形 ?
    • 使用 <canvas> 标签
      • ['kænvəs] 画布标签
  • 画布标签 <canvas>的区域 是什么形状?
    • 一个矩形区域
    • 可以控制画布标签中的 每一像素 吗?
      • 是的.
  • canvas 标签本身 可以绘图吗 ?
    • 不可以.
    • 如何进行绘图 ?
      • 使用 canvas 标签 的JavaScript 方法
        • 从左上角开始 (0,0) ,在画布上绘制 150x75 的矩形 如何实现 ?
          • fillRect 方法 设置参数 (0,0,150,75)。
          • ctx.fillRect(0,0,150,75);
<!DOCTYPE html>
<html>
	<head>
		<script>
			var c=document.getElementById("myCanvas");
			var ctx=c.getContext("2d");
			ctx.fillRect(0,0,150,75);
		</script>
	</head>
	<body>
		<canvas id="myCanvas" width="300" height="150" style="border:1px solid #d3d3d3;">
		Your browser does not support the HTML5 canvas tag.
		</canvas>
	</body>
</html>

⑵ svg 表示 用于网络的 基于矢量的 图形

  • 用于

    • 如何 表示用于网络的 基于矢量的 图形 ?
    • 使用 <svg>标签
    • svg 的全称是什么 ?
      • scalable vector graphics
        • ['skeləbl] ['vɛktɚ] ['græfɪks]
        • 可伸缩 矢量 图形
  • 使用什么格式 定义 矢量图形 ?

    • 使用 XML 格式
  • SVG (可伸缩矢量)图像 有什么特点 ?

    • 放大或改变尺寸的情况下 其图形质量 会有损失
    • SVG 是 万维网联盟的标准
  • SVG 的优势有哪些 ?

    • ① SVG 图像 可通过 文本编辑器 来创建和修改
    • ② 可被搜索、索引、脚本化或压缩
    • ③ 可伸缩的
    • ④ 可在 任何的分辨率下 被高质量地打印
    • ⑤ 可在 图像质量不下降 的情况下 被放大
  • 哪些浏览器支持 svg 标签 ?

    • IE 9、Firefox、Opera、Chrome 以及 Safari 支持内联 SVG
  • 在 HTML5 中,能将 SVG 元素 直接嵌入 HTML 页面中 吗?

    • 可以.

<!DOCTYPE html>
<html>
<body>

<svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="190">
  <polygon points="100,10 40,180 190,60 10,60 160,180"
  style="fill:lime;stroke:purple;stroke-width:5;fill-rule:evenodd;" />
</svg>

</body>
</html>

  • 显示结果,是不是很强大?
    在这里插入图片描述

★ HTML 5 画布和可伸缩矢量图形

  • 画布 canvas 和 可伸缩矢量图形 svg 有什么共同点 ?

    • 都允许 创建图形
  • SVG 可伸缩矢量图形 的特点 有哪些 ?

    • SVG 是一种 使用 XML 描述 2D 图形的语言。
    • SVG 基于 XML,这意味着 SVG DOM 中的 每个元素都是可用的。
      • 您可以为某个元素 附加 JavaScript 事件处理器
    • 在 SVG 中,每个 被绘制的图形 均被视为对象
      • 如果 SVG 对象的属性 发生变化,那么浏览器 能够自动重现图形
  • Canvas 画布 的特点 有哪些 ?

    • Canvas 通过 JavaScript 来绘制 2D 图形
      • Canvas 是逐像素 进行渲染的。
    • 在 canvas 中,一旦图形 被绘制完成,它就 不会继续得到浏览器的关注。
      • 如果其位置 发生变化,整个场景 需要重新绘制,包括 任何或许已被图形覆盖 的对象。
Canvas 画布SVG 可伸缩矢量图形
依赖 分辨率不依赖 分辨率
不支持 事件处理器支持 事件处理器
弱的 文本渲染能力最适合 带有大型 渲染区域 的应用程序(比如谷歌地图
能够以 .png.jpg 格式 保存结果图像复杂度高 会减慢渲染速度(任何过度使用 DOM 的应用都不快)
最适合 图像密集型的 游戏,其中的许多对象 会被频繁重绘不适合 游戏应用

21. 媒体

⑴ 多媒体

  • Web 上的多媒体指的是什么 ?
    • 音效、音乐、视频和动画
  • 多媒体格式有哪些 ?
    • 视频格式
    • 音频(声音)格式
  • 视频格式
格式文件扩展名描述
① AVI.aviAVI (Audio Video Interleave) 格式是由微软开发的。 所有运行 Windows 的计算机 都支持 AVI 格式。它是因特网上 很常见的格式,但非 Windows 计算机 并不总是 能够播放
② WMV.wmvWindows Media 格式 是由微软开发的。Windows Media 在因特网上 很常见,但是如果 未安装额外的(免费)组件,就无法播放 Windows Media 电影。一些后期的 Windows Media 电影 在所有非 Windows 计算机上都无法播放,因为没有 合适的播放器。
③ MPEG.mpg.mpegMPEG (Moving Pictures Expert Group) 格式是因特网上 最流行的格式。它是跨平台的,得到了所有 最流行的浏览器的支持。
④ QuickTime.movQuickTime 格式 是由苹果公司开发的。QuickTime 是因特网上 常见的格式,但是 QuickTime 电影不能在 没有安装额外的(免费)组件的 Windows 计算机上播放。
⑤ RealVideo.rm .ramRealVideo 格式是由 Real Media 针对因特网 开发的。该格式允许 低带宽条件下(在线视频、网络电视)的视频流。由于是 低带宽优先的,质量常会降低
⑥ Flash.swf.flvFlash (Shockwave) 格式是由 Macromedia 开发的。Shockwave 格式 需要额外的组件来播放。但是该组件 会预装到 Firefox 或 IE 之类的浏览器上。
⑦ Mpeg-4.mp4Mpeg-4 (with H.264 video compression) 是一种 针对因特网的新格式。事实上,YouTube 推荐使用 MP4。YouTube 接收多种格式,然后全部转换为 .flv 或 .mp4 以供分发。越来越多的视频 发布者转到 MP4,将其作为 Flash 播放器和 HTML5 的因特网 共享格式。

  • 声音格式
格式文件扩展名描述
① MIDI.mid.midiMIDI (Musical Instrument Digital Interface) 是一种针对 电子音乐设备(比如合成器和声卡)的格式。MIDI 文件 不含有声音,但包含 可被电子产品(比如声卡)播放的数字音乐指令。因为 MIDI 格式 仅包含指令,所以 MIDI 文件极其小巧。只有 23k 的大小,但却能播放将近 5 分钟。MIDI 得到了广泛的平台上的 大量软件的支持。大多数 流行的网络浏览器都支持 MIDI。
② RealAudio.rm.ramRealAudio 格式是由 Real Media 针对因特网开发的。该格式也支持 视频。该格式允许 低带宽条件下的音频流(在线音乐、网络音乐)。由于是低带宽优先的,质量常会降低
③ Wave.wavWave (waveform) 格式是由 IBM 和微软开发的。所有运行 Windows 的计算机和所有网络浏览器(除了 Google Chrome)都支持它。
④ WMA.wmaWMA 格式 (Windows Media Audio),质量优于 MP3,兼容 大多数播放器,除了 iPod(美 /aɪˈpɒd/,苹果公司音乐播放器)。WMA 文件 可作为连续的数据流 来传输,这使它 对于网络电台或在线音乐很实用。
⑤ MP3.mp3.mpgaMP3 文件实际上是 MPEG 文件的 声音部分。MPEG 格式 最初是由 运动图像专家组 开发的。MP3 是其中 最受欢迎的针对音乐的声音格式。
  • 音频格式的选择 使用哪种格式?
  • WAVE 是因特网上 最受欢迎的 无压缩 声音格式,所有流行的浏览器 都支持它。
  • 如果需要 未经压缩的声音(音乐或演讲),应该使用那种音频格式 ?
    • WAVE 格式,文件扩展名.wav
  • MP3 是最新的 压缩 录制音乐格式
  • 如果 从事录制音乐,选择哪种音频格式?
    • MP3

⑵ object 向页面 添加多媒体 /嵌入对象

  • 如何 定义一个 嵌入的对象 ?如何向 页面 添加多媒体 ?
    • 使用 <object>元素
  • 用什么标签 包含对象,比如图像、音频、视频、Java applets、ActiveX、PDF 以及 Flash ?
    • <object> 标签
  • 可由 浏览器启动 的程序 称之为什么?
    • 辅助 应用程序helper application
      • 也称为 插件
  • 使用什么 播放音频和视频 Java applets、ActiveX、PDF 以及 Flash
    • 插件
  • 如何加载插件 ?
    • 使用 <object>标签
  • 使用辅助程序(插件) 播放视频和音频 的 优势 有哪些 ?
    • 允许用户来控制 部分或全部 播放设置
      • 大多数辅助应用程序 允许对 音量设置和播放功能吗 ?
      • 是的 .(比如后退、暂停、停止和播放)的手工(或程序的)控制。

⑶ 如何 在 HTML 中 播放声音和视频 ?

  • 如何 在 HTML 中播放声音和视频 ?

    • 使用插件
    • 什么是 浏览器插件 ?
      • 一个扩展程序. 一种 扩展浏览器标准功能的 小型计算机程序
  • 播放音乐、显示地图、验证银行账号,控制输入等 一般是怎样实现的 ?

    • 使用 插件
    • 如何 将插件添加到 HTML 页面 ?
      • 可使用 <object><embed> 标签
    • 如何 定义资源(通常非 HTML 资源)的容器 ?
      • 使用 <object><embed> 标签
    • 插件的显示 是如何的 ?
      • 根据类型,它们即会 由浏览器显示,也会由 外部插件显示
  • 如何 定义外部 (非 HTML) 内容容器 ?

    • 使用 <embed> 元素
      • (这是一个 HTML5 标签,在 HTML4 中 是非法的,但是 所有浏览器中都有效)。
        • 如何显示 嵌入网页中的 MP3 文件 ?
        • 实例 : embed 标签 3 个属性,宽高 资源
          • <embed height="100" width="100" src="song.mp3" />
          • <embed> 标签在 HTML 4 中是无效的。
            • 会导致 页面 无法通过 HTML 4 验证。

  • 如何 定义 外部(非 HTML)内容的容器 ?
    • 使用 <object> 元素
    • <object height="100" width="100" data="song.mp3"></object>
    • <audio> 是一个 HTML5 元素,在 HTML 4 中是无效的。
      • 会导致 页面 无法通过 HTML 4 验证 ,如何解决 ?
        • 使用 <!DOCTYPE html> (HTML5 文档声明) 解决 验证问题
    • 为什么 必须把 音频文件 转换为 不同的格式 ?
      • 使音频格式 支持更广泛
    • <audio> 元素在 老式浏览器中 不起作用
  • 嵌套关系
    • audio
      • source
      • embed
<audio controls="controls">
  <source src="song.mp3" type="audio/mp3" />
  <source src="song.ogg" type="audio/ogg" />
Your browser does not support this audio format.
</audio>


  • 最好的 HTML 解决方法
    • 使用了两个不同的 音频格式
    • HTML5 <audio> 元素会尝试 以 mp3 或 ogg 来播放音频。
      • 如果失败,代码将 回退尝试 <embed> 元素
<audio controls="controls" height="100" width="100">
  <source src="song.mp3" type="audio/mp3" />
  <source src="song.ogg" type="audio/ogg" />
<embed height="100" width="100" src="song.mp3" />
</audio>

  • 使用超链接

    • 如果网页包含 指向媒体文件的 超链接,大多数浏览器会 使用“插件” 来播放文件吗 ?
      • 是的.
      • <a href="song.mp3">Play the sound</a>
  • 如果想 在网页中 播放视频 该怎么做 ?

    • 视频上传到优酷等 视频网站
    • 在 您的网页中插入 HTML 代码 即可播放视频.

<embed src="http://player.youku.com/player.php/sid/XMzI2NTc4NTMy/v.swf" 
width="480" height="400" 
type="application/x-shockwave-flash">
</embed>

22. API

⑴ HTML5 如何进行 地理定位 ?

  • 如何 定位 用户的位置 ?
    • HTML5 geolocation(地理定位)
    • 为什么需要用户同意 ?
      • 该特性 可能侵犯用户的隐私,所以需要用户同意.
      • 如果用户不同意,用户位置信息 是不可用的.
  • 哪些 浏览器支持 geolocation(地理定位)?
    • IE 9、Firefox、Chrome、Safari 以及 Opera 支持地理定位。
      • 对于拥有 GPS(全球定位系统(Global Position System)) 的设备,比如 iPhone,地理定位 更加精确。
  • 如何 获得用户的位置 ?
    • 使用 getCurrentPosition() 方法
    • 可返回什么 ?
      • 用户位置的 经度和纬度

⑵ 拖放

  • 如何抓取某物 并拖入不同的位置 ?

    • 拖放(Drag 和 Drop)
  • 拖放是 HTML5 标准的组成部分:任何元素都是可拖放的。

  • 如何 把元素设置为 可拖放 ?

    • 把 元素的 draggable 属性设置为 true
    • <img draggable="true">
  • 如何指定 被拖放的内容 ?

    • ondragstartsetData()
      然后,规定当元素被拖动时发生的事情。
  • 如何 指定拖动什么数据 ?

    • ondragstart 属性调用了一个 drag(event)函数
      • <img id="drag1" src="img_logo.gif" draggable="true" ondragstart="drag(event)" width="336" height="69">
function drag(ev) {
    ev.dataTransfer.setData("text", ev.target.id);
}

  • 如何设置 被拖动数据的 数据类型和值 ?
    • dataTransfer.setData()方法
function drag(ev) {
    ev.dataTransfer.setData("text", ev.target.id);
}
  • 如何 规定被拖动的数据 能够被放置在哪 (拖到何处)?

    • ondragover 事件
  • 默认地,数据/元素无法被放置到哪里?

    • 其他元素中。
  • 为了实现拖放,我们必须阻止元素的这种 默认的处理方式。

  • 这个任务由 ondragover 事件的 event.preventDefault()方法完成:

  • event.preventDefault()


♣ 结束语 和 友情链接

  • 捐助: 喜欢这篇文章吗? 持续更新中,捐助此文,向团团 表示鼓励和支持吧~❤
    在这里插入图片描述
  • 捐助二维码:
    在这里插入图片描述



  • 感谢:♥♥♥ 如果这篇文章 对您有帮助的话,可以点赞、评论、关注,鼓励下作者哦,感谢阅读 ~
  • 欢迎指正: 如果发现 有需要 更正的细节问题,欢迎指正,谢谢大家 ~╮( ̄▽ ̄)╭

  • 转载 请注明出处 ,Thanks♪(・ω・)ノ
    • 作者:Hey_Coder
    • 来源:CSDN
    • 原文:https://blog.csdn.net/VickyTsai/article/details/88534854
    • 版权声明:本文为博主原创文章,转载请附上博文链接!

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值