1.Firefox的渲染引擎是Gecko。而Gecko是作为通用Mozilla浏览器的一部分开发的。
2.Safari使用的渲染引擎为Webkit。Webkit本来是Linux平台中Konqueror浏览器渲染引擎KHTML的一个分支。
3.想要得到站点的信任,浏览器必须向用户代理字符串中放入足够多的信息,以便站点能够信任它与其他流行的浏览器是兼容的。一般都把自己标识为Mozilla5.0.一般Safari的版本号是编译版本号,不是正式发布时的版本号。
4.Konqueror浏览器渲染引擎:一般用于Linux系统,为了兼容性,用户代理字符串和webkit的用户代理字符串类似。
5.Chrome以Webkit作为其渲染引擎,但使用了不同的JS引擎,比如高性能的V8引擎。
6.Opera:其用户代理字符串正确地标识了自身以及自身的版本号。但是后面为了兼容性还是修改了自己的用户代理字符串,一种方式是半伪装成IE或者Firefox浏览器,而另一种是根据站点自动完全伪装为IE或者Firefox浏览器。其渲染引擎为Presto。
7.IOS和Android的默认浏览器都基于Webkit,共享相同的用户代理字符串。会加一个标志为移动版的信息(Mobile)。
8.一般情况下,知道渲染引擎和最低限度的版本就足以决定正确的操作方法了。最好不要指定特定的浏览器版本,要用版本来控制,这样不用大面积修改代码。
9.所以识别渲染引擎脚本将主要检测五大渲染引擎:IE、Gecko、Webkit、KHTML、Opera。
10.使用模块增强模式来写检测脚本(函数表达式后面加上小括号,表示立即调用):首先要检测Opera对象,因为它的用户代码字符串不显示表示它是Opera浏览器,使用window.opera对象。第二个检测的应该是Webkit,因为它可能被误认为是KHYML或Gecko。
11.CSS中以em为单位,是自己自动扩展的。让链接以块形式显示,需要设置display为block,并且显示设置height。而一般我们就使用line-height设置高度,这样可以使得按钮中的文字垂直居中。 但是这样的话,就会依据文字占据的行数来自动调整按钮的高度。解决办法是调解按钮的尺寸,或者改变文字的大小,使它排成一行。
12.createElement:可以直接创造标签,也可以接受组件,直接创造组件。
13.重温模板、组件关系,模板里面调用组件,模板替换选中区域。而我们封装组件,也就是单独的js文件,就是方便调用。
14.实际运行的时候,是运行了vue-template-conpiler的,所以我们不需要使用runtime-complier,只需要使用runtime-only就行了。render函数其实就是渲染引擎函数,由template complier而来。
15.Vue2.x是使用的flow-type(Facebook)做类型检测, 而Vue3.x使用的是TypeScript做类型检测(Microsoft)。脚手架cli3设计原则是0配置,移除bulid和config文件夹,移除static文件夹,换成public文件夹,打包时都会原封不动打包到dist里面。