HTML 是万维网之父 Tim Berners-Lee 发明的,与其一起被发明的还有 URL 和 HTTP。这三者组成了最基本的互联网,实现了输入网页地址便可以获得网页。
标签(tag)是 HTML 的基本单位。
一个网页的框架:
- <!DOCTYPE html> 含义:“文档类型是 html”
- <html></html> 作用 : 包裹<head>标签和<body>标签
<!DOCTYPE >( document type )
<!DOCTYPE> 标签是一种标准通用标记语言的文档类型声明,它的目的是要告诉标准通用标记语言解析器,它应该使用什么样的文档类型定义(DTD)来解析文档。
在了解 <DOCTYPE> 之前,我们先来了解一下文档类型:
- GML(Generalized Markup Language):第一代置标语言,使文档能明确将标示和内容分开。
- SGML(Standard Generalized Markup Language):第一套非常严谨的文件描述方法。它的组成包括语法定义、DTD、文件实例三部分。
- HTML(HyperText Markup Language):SGML的一个子集,其早期规范比较松散,但比较易学。
- XML(Extensible Markup Language):SGML 的一个子集,但使用比较严格的模式。
- XHTML:官方基于XML和HTML制订的一套标记语言。
- HTML5 : 不基于任何特定的标记语言系统,有自己完整的标准。
浏览器渲染页面有两种模式:标准模式和混杂模式:
- W3C 标准出来之前,浏览器对页面的渲染没有统一的标准,即混杂模式;
- W3C 标准出来后有了统一的标准,即标准模式;
DOCTYPE 的作用就是触发浏览器的标准渲染模式。<!DOCTYPE> 声明必须是 HTML 文档的第一行,位于标签之前。
如果网页没有 doctype 声明或者 doctype 声明错误( DTD 的 URL 错误等),就以混杂模式解析。
HTML4.0:HTML4.0 基于 SGML, 所以需要对 DTD 进行引用,才能告知浏览器文档所使用的文档类型
严格模式:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
过渡模式:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
框架模式:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">
HTML5不基于 SGML,因此不需要对DTD进行引用,但是需要doctype来规范浏览器的行为
<!DOCTYPE html>
<head>标签
这篇博客我们主要讲解一下<head>标签。
<head> 标签作用是包含一些页面的元数据(元数据就是描述数据的数据)其中主要有四类标签(一般不会在浏览器中显示):
- <meta> : 用于描述页面的元数据信息
- <title> : 用于说明文章的页面的标题
- <link> : 引入外部资源
- <style> : 用于为 HTML 文档定义样式信息
<meta>标签是一组键值对,一般 meta 标签由 name 和 content 两个属性来定义。name 表示元信息的名,content 则用于表示元信息的值。
常见属性:
- charset : 声明 HTML 文档的字符编码
一般情况下,HTTP 服务端会通过 http 头来指定正确的编码方式,但是有些特殊的情况如使用 file 协议打开一个 HTML 文件,则没有 http 头,这种时候,charset meta 就非常重要了。
- name : 把 content 属性关联到一个名称
- http-equiv : 把 content 属性关联到 HTTP 头部
- content : 定义与 http-equiv 或 name 属性相关的元信息
这里我们着重说一下name = "viewport"
<meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1">
- width:定义视口宽度
- height:定义视口高度
- initial-scale:定义设备宽度与视口大小的缩放
- maximum-scale:定义最大缩放
- minimum-scale:定义最小缩放
<link>标签常见属性:
- rel="" 表明当前文档与被链接文档之间的关系
- href 表明样式表文件的路径
link 标签常用于引入css
<link rel="stylesheet" href="style.css">