前端知识点总结

知识点一:DOCTYPE和浏览器渲染模式

文档类型,一个文档类型标记是一种标准通用标记语言的文档类型声明,它的目的是要告诉标准通用标记语言解析器,它应该使用什么样的文档类型定义(DTD)来解析文档。Doctype还会对浏览器的渲染模式产生影响,不同的渲染模式会影响到浏览器对于 CSS 代码甚至 JavaScript 脚本的解析,所以Doctype是非常关键的,尤其是在 IE 系列浏览器中,由DOCTYPE 所决定的 HTML 页面的渲染模式至关重要。

浏览器解析HTML方式:

  • 非怪异(标准)模式

  • 怪异模式

  • 部分怪异(近乎标准)模式

在“标准模式”(standards mode) 页面按照 HTML 与 CSS 的定义渲染,而在“怪异模式(quirks mode) 模式”中则尝试模拟更旧的浏览器的行为。 一些浏览器(例如,那些基于 Mozilla 的 Gecko 渲染引擎的,或者 Internet Explorer 8 在 strict mode 下)也使用一种尝试于这两者之间妥协的“近乎标准”(almost standards) 模式,实施了一种表单元格尺寸的怪异行为,除此之外符合标准定义。

一个不含任何 DOCTYPE 的网页将会以 怪异(quirks) 模式渲染。

HTML5提供的<DOCTYPE html>是标准模式,向后兼容的, 等同于开启了标准模式,那么浏览器就得老老实实的按照W3C的 标准解析渲染页面,这样一来,你的页面在所有的浏览器里显示的就都是一个样子了。

知识点二:html5

文件类型声明(<!DOCTYPE>)仅有一型:<!DOCTYPE HTML>

新的解析顺序:不再基于SGML。

新的元素: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,wbr。 input

元素的新类型:date, email, url等等。

新的属性:ping(用于a与area),charset(用于meta), async(用于script)。

全域属性:id, tabindex, repeat。

新的全域属性:contenteditable, contextmenu, draggable, dropzone, hidden,

spellcheck。

移除元素:acronym, applet, basefont, big, center, dir, font,

frame, frameset, isindex, noframes, strike, tt。

知识点三:常用meta整理

  • 概要

标签提供关于HTML文档的元数据。元数据不会显示在页面上,但是对于机器是可读的。它可用于浏览器(如何显示内容或重新加载页面),搜索引擎(关键词),或其他 web 服务。 ——W3School

  • 必要属性

属性值描述contentsome text定义与http-equiv或name属性相关的元信息

  • 可选属性

属性值描述 http-equivcontent-type / expire / refresh / set-cookie把content属性关联到HTTP头部。nameauthor / description / keywords / generator / revised / others把 content 属性关联到一个名称。contentsome text定义用于翻译 content 属性值的格式。

页面关键词,每个网页应具有描述该网页内容的一组唯一的关键字。

使用人们可能会搜索,并准确描述网页上所提供信息的描述性和代表性关键字及短语。标记内容太短,则搜索引擎可能不会认为这些内容相关。另外标记不应超过 874 个字符。

1
<meta name="keywords" content="your tags" />

页面描述,每个网页都应有一个不超过 150 个字符且能准确反映网页内容的描述标签。

1
<meta name="description" content="150 words" />

搜索引擎索引方式,robotterms是一组使用逗号(,)分割的值,通常有如下几种取值:none,noindex,nofollow,all,index和follow。确保正确使用nofollow和noindex属性值。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<meta name="robots" content="index,follow" />

<!--

all:文件将被检索,且页面上的链接可以被查询;

none:文件将不被检索,且页面上的链接不可以被查询;

index:文件将被检索;

follow:页面上的链接可以被查询;

noindex:文件将不被检索;

nofollow:页面上的链接不可以被查询。

-->

页面重定向和刷新:content内的数字代表时间(秒),既多少时间后刷新。如果加url,则会重定向到指定网页(搜索引擎能够自动检测,也很容易被引擎视作误导而受到惩罚)。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
<meta http-equiv="refresh" content="0;url=" />

<meta name="author" content="author name" /> <!-- 定义网页作者 -->

<meta name="google" content="index,follow" />

<meta name="googlebot" content="index,follow" />

<meta name="verify" content="index,follow" />移动设备viewport:能优化移动浏览器的显示。如果不是响应式网站,不要使用initial-scale或者禁用缩放。

<!-- 针对手持设备优化,主要是针对一些老的不识别viewport的浏览器,比如黑莓 -->

<meta name="HandheldFriendly" content="true">

<!-- 微软的老式浏览器 -->

<meta name="MobileOptimized" content="320">

<!-- uc强制竖屏 -->

<meta name="screen-orientation" content="portrait">

<!-- QQ强制竖屏 -->

<meta name="x5-orientation" content="portrait">

<!-- UC强制全屏 -->

<meta name="full-screen" content="yes">

<!-- QQ强制全屏 -->

<meta name="x5-fullscreen" content="true">

<!-- UC应用模式 -->

<meta name="browsermode" content="application">

<!-- QQ应用模式 -->

<meta name="x5-page-mode" content="app">

<!-- windows phone 点击无高光 -->

<meta name="msapplication-tap-highlight" content="no">网页相关申明编码<meta charset='utf-8' />优先使用 IE 最新版本和 Chrome <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" /><!-- 关于X-UA-Compatible -->

<meta http-equiv="X-UA-Compatible" content="IE=6" ><!-- 使用IE6 -->

<meta http-equiv="X-UA-Compatible" content="IE=7" ><!-- 使用IE7 -->

<meta http-equiv="X-UA-Compatible" content="IE=8" ><!-- 使用IE8 -->

浏览器内核控制:国内浏览器很多都是双内核(webkit和Trident),webkit内核高速浏览,IE内核兼容网页和旧版网站。而添加meta标签的网站可以控制浏览器选择何种内核渲染。

1
<meta name="renderer" content="webkit|ie-comp|ie-stand">

国内双核浏览器默认内核模式如下:

  • 搜狗高速浏览器、QQ浏览器:IE内核(兼容模式)

  • 360极速浏览器、遨游浏览器:Webkit内核(极速模式)

禁止浏览器从本地计算机的缓存中访问页面内容:这样设定,访问者将无法脱机浏览。

1
2
3
4
5
6
7
8
<meta http-equiv="Pragma" content="no-cache">Windows 8
<meta name="msapplication-TileColor" content="#000"/> <!-- Windows 8 磁贴颜色 -->
<meta name="msapplication-TileImage" content="icon.png"/> <!-- Windows 8 磁贴图标 -->

站点适配:主要用于PC-手机页的对应关系。
<meta name="mobile-agent"content="format=[wml|xhtml|html5]; url=url"><!--[wml|xhtml|html5]根据手机页的协议语言,选择其中一种;url="url" 后者代表当前PC页所对应的手机页URL,两者必须是一一对应关系。 -->

<meta http-equiv="Cache-Control" content="no-siteapp" />
关注作者公众号,获取更多资源!
赏作者一杯咖啡~