前端7班-张洋源
常见的浏览器有哪些,有哪些内核?
1.IE浏览器:目前使用最广泛的浏览器,由微软公司开发,预装在Window操作系统中。
2.Safari浏览器:由苹果公司开发,是使用的比较广泛的浏览器之一。预装在苹果操作系统当中,是苹果系统的专属浏览器。
3.Firefox浏览器:是一个开源的浏览器,由Mozilla资金会和开源开发者一起开发。由于是开源的,所以它集成了很多小插件,开源拓展很多功能。
4.Opera浏览器:opera浏览器是由挪威一家软件公司开发,该浏览器创始于1995。特点是快速小巧,属于轻灵的浏览器。
5.Chrome浏览器:由谷歌公司开发,特点是简洁,快速,稳定性和安全性好。获得越来越多使用者亲睐。
6.其他浏览器:像360浏览器,猎豹浏览器,搜狗浏览器等大多是基于IE内核开发的。
浏览器内核分类
一:Trident内核
Trident(又称为MSHTML),是微软的Windows系统搭载的网页浏览器—InternetExplorer的排版引擎的名称,它的第一个版本随着1997年10月Internet Explorer第四版释出,之后不断的加入新的技术并随着新版本的Internet Explorer释出。在Internet Explorer第七版中,微软对Trident排版引擎做了的重大的变动,除了加入新的技术之外,并增加对网页标准的支持。
二:Webkit、Chromium内核
Chromium是一个由Google主导开发的网页浏览器,以BSD许可证等多重自由版权发行并开放源代码。Chromium的开发可能早自2006年即开始[1],设计思想基于简单、高速、稳定、安全等理念,在架构上使用了苹果发展出来的WebKit排版引擎、Safari的部份源代码与Firefox的成果,并采用Google独家开发出的V8引擎以提升解译JavaScript的效率,而且设计了“沙盒”、“黑名单”、“无痕浏览”等功能来实现稳定与安全的网页浏览环境。
国内的所谓双核浏览器,除了傲游3是直接基于Webkit开发的之外,其他浏览器都是基于Google的Chromium开源项目。而Webkit浏览器引擎是苹果公司的开源项目,苹果的Safari浏览器就是基于Webkit开发的。Chromium和Webkit的区别是,Webkit是爷爷辈;Chromium是父亲辈,傲游3也是父亲这一辈的;而Chrome是嫡长孙,搜狗浏览器、QQ浏览器、360极速浏览器、百度浏览器和世界之窗浏览器极速版则都是孙子辈分的。
三:Gecko内核
Gecko是一套开放源代码、C++编写的网页排版引擎。目前为Mozilla家族网页浏览器以及Netscape6以后版本浏览器所使用。该引擎原本是由网景通信公司开发的,现则由Mozilla基金会维护,以多许可方式授权发布,包括Mozilla公共许可证(MPL)、GNU通用公共授权条款(GPL)以及GNU较宽松公共许可证(LGPL)。
四:Presto内核
Presto是一个由Opera Software开发的浏览器排版引擎,供Opera7.0及以后版使用。Presto取代了旧版Opera 4至6版本使用的Elektra排版引擎,包括加入动态功能,例如网页或其部分可随着DOM及Script语法的事件而重新排版。
资料来源:http://liulanmi.com/browser 浏览器内核分类
utf-8与GBK的区别
UTF-8编码是用以解决国际上字符的一种多字节编码,它对英文使用8位(即一个字节),中文使用24位(三个字节)来编码。对于英文字符较多的论坛则用UTF-8节省空间。
GBK的文字编码是双字节来表示的,即不论中、英文字符均使用双字节来表示,只不过为区分中文,将其最高位都定成1。
GBK是中文字符集,包括所有中文字符。在装有中文GBK编码电脑上能正常显示中文,而如果在国外非中文操作系统的电脑上则会显示成为乱码,所以GBK主要针对国内网站使用。
而UTF8则是国际标准,包括全世界所有国家需要用到的字符。如果在国外非中文操作系统上,也可以正确的显示中文。通用性比较好。
浏览器标准模式和怪异模式之间的区别是什么?
标准模式是指,浏览器按W3C标准解析执行代码;怪异模式,是指浏览器按照自己的方式解析执行代码,因为不同浏览器解析执行的方式不一样,所以称为怪异模式。
浏览器解析时到底使用标准模式还是怪异模式,与你网页中的文档声明直接相关,文档声明定义了标准文档的类型(标准模式解析)文档类型,会使浏览器使用相应的方式加载网页并显示,忽略文档声明,将使网页进入怪异模式。
px、em、rem的区别
px为单位
px实际上就是像素,用px设置字体大小时,比较稳定和精确。但是这种方法存在一个问题,当用户在浏览器中浏览我们制作的Web页面时,如果改变了浏览器的缩放,这时会使用我们的Web页面布局被打破。这样对于那些关心自己网站可用性的用户来说,就是一个大问题了。因此,这时就提出了使用“em”来定义Web页面的字体。
em为单位
em就是根据基准来缩放字体的大小。em实质是一个相对值,而非具体的数值。这种技术需要一个参考点,一般都是以的“font-size”为基准。另外,em是相对于父元素的属性而计算的。
Rem为单位
em是相对于其父元素来设置字体大小的,这样就会存在一个问题,进行任何元素设置,都有可能需要知道他父元素的大小。而rem是相对于根元素,这样就意味着,我们只需要在根元素确定一个参考值。