
DOCTYPE 是 html5 标准网页声明,且必须声明在 HTML 文档的第一行。用来告知浏览器的解析器用什么文档标准来解析该文档,不同的渲染模式会影响到浏览器对于 CSS 代码甚至 JavaScript 的解析。
文档解析类型有:
HTML(超文本标记语言):在 html 4.0 之前 HTML 先有实现后有标准,导致 HTML 非常混乱和松散
XML(可扩展标记语言):主要用于存储数据和结构,可扩展(JSON 也具有类似作用,更轻量高效,正在替代 XML )
XHTML(可扩展文本标记语言):基于上面两者,W3C 为了解决 HTML 混乱问题而生,并基于此诞生了 HTML5,在开头加入 <!DOCTYPE html> 的做法因此而来,如果不加就是兼容混乱的 HTML,加了就是标准模式
HTML 的数据属性,用于将数据存储于标准的 HTML 元素中作为额外信息,可以通过 JS 进行访问和操作,来实现对数据的操作
<article
id="article"
data-columns="2"
data-index-number="1">
</article>
语义化是指使用恰当语义的 html 标签,让页面具有良好的结构与含义,比如 <p> 标签就表示段落,<article> 代表正文内容
语义化的好处主要有两点:
<!DOCTYPE>)仅有一种:<!DOCTYPE HTML>section, video, progress, nav, meter, time, aside, canvas, command, datalist, details, embed, figcaption, figure, footer, header, hgroup, keygen, mark, output, rp, rt, ruby, source, summary, wbrinput 元素新类型:date, email, url 等ping(用于 a 和 area),charset(用于 meta), async(用于 script)id, tabindex, repeatcontenteditable, contextmenu, draggable, dropzone, hidden, spellcheckacronnym, applet, basefont, big, center, dir, font, frame, frameset, isindex, noframes, strike, ttheader, nav, footer, aside, article, sectioncalendar, date, time, email, url, searchmeta 标签由 name 和 content 属性来定义,用于描述一个 HTML 网页文档的属性,如作者、日期和时间、网页描述、关键词、页面刷新等,name 由 HTML 标准进行约定,也可以使用自定义 name
charset,用于描述 HTML 文档的编码形式
<meta charset="UTF-8">
http-equiv,相当于 HTTP 的头文件作用,如下面可以设置 http 缓存过期时间
<meta
http-equiv="expires"
content="Wed, 20 Jun 2020 20:58:00 GMT">
viewport,控制视口的大小和比例
<meta
name="viewport"
content="width=device-width, initial-scale=1, maximum-scale=1">
apple-mobile-web-app-status-bar-style,自定义工具栏颜色
<meta
name="apple-mobile-web-status-bar-style"
content="black-translucent">
src 用于替换当前的元素, href 用于在当前文档和引用资源建立关系
src 是指向外部资源的位置,指向的内容会嵌入到文档中当前标签所在的位置,在请求 src 资源时会将其指向的资源下载并应用到文档内,如 js,图片和 frame 等元素。当浏览器解析到该元素时,会暂停其他资源的下载和处理,直到将该资源加载、编译、执行完毕,所以一般 js 会放在底部而不是头部
<script src="a.js">
href 是指向网络资源所在位置(的超链接),用来建立和当前元素或文档之间的连接,当浏览器识别到它指向的文件时,会并行下载资源,不会停止对当前文档的处理,所以一般建议使用 link 来加载 CSS 而不是 @import
<link href="common.css" rel="stylesheet" />
可以设计响应式图片,可以使用两个新的属性 srcset 和 sizes 来提供更多额外的资源图像和提示,帮助浏览器选择正确的资源。
srcset 定义了允许浏览器选择的图像集,以及每个图像的大小
srcset 定义了一组媒体条件并且指明当某些媒体条件为真时,什么样的图片尺寸是最佳选择 有了这些属性,浏览器会
查看设备宽度
检查 sizes 列表中哪些媒体条件是第一个为真
查看给予该媒体查询的槽大小
加载 srcset 列表中引用的最接近所选的槽大小的图像
<img src="clock-demo-thumb-200.png"
alt="clock"
srcset="clock-demo-thumb-200.png 200w,
clock-demo-thumb-400.png 400w"
sizes="(min-width: 600px) 200px, 50vw">
还有哪一个标签能起到和 srcset 相似作用?
<picture> 元素通过包含零个或多个 <source> 元素和一个 <img> 元素来为不同的显示/设备场景提供图像版本。浏览器会选择最匹配的子 <source> ,如果没有匹配的,就选择 <img> 元素的 src 中的 URL。然后,所选图像呈现在 <img> 元素占据的空间中。<picture>
<source srcset="/media/examples/surfer-240-200.jpg"
meida="(min-width: 800px)">
<img src="/media/examples/painted-hand-298-332.jpg">
</picture>
注意:
用来定义表单控制间的关系,当用户选择该标签时,浏览器会自动将焦点转到和标签相关的表达控件上
<label for="name">Name:</label>
<input type="text" name="name" id="name"/>
<label>Date:<input type="text" name="date"/></label>
给不需要提示的 form 或 input 设置 autocomplete = "off"
StorageEvent事件)、cookies 等本地存储方式