HTML作为目前最流行的超文本标记语言,在前端开发中有着广泛的应用。因此,在面试中我们也会遇见各种各样的面试题,下面我们为大家介绍了3道基本的HTML面试题,我们牛刀小试,检验一下自己的HTML水平。
所谓的“浏览器内核”无非指的是一个浏览器最核心的部分-“Rendering Engine”,直译叫做“渲染引擎”,我们也常称为“排版引擎”、“解释引擎”。这个引擎的作用是帮助浏览器来渲染网页内容,将页面内容和排版代码转换为用户所见的视图。
但我们常常把所说的“浏览器内核”,包含了javascript引擎,例如Webkit,它由渲染引擎WebCore和javascript引擎JSCore组成。
下面我们看看各个浏览器使用的内核:
IE浏览器诞生于1994年,当时微软为了抗衡网景浏览器,和Spyglass合作,并根据源代码实现了自己的IE内核Trident。每一次新的IE发布,也标志着Trident内核版本号的提升。
Safari所用浏览器内核是大名鼎鼎的Webkit。Webkit前身是KDE小组的KHTML引擎,可以说Webkit是KHTML的一个开源分之。Webkit可以说是苹果公司给开源世界的一大贡献,基于此开源引擎,衍生了很多Webkit分之,若Chrome浏览器引擎。
(3)Chrome
从08年开始,google建立了chromium引擎,它是webkit的一个分之。但却把webkit代码梳理得可读性非常高,以前可能需要一天进行编译的代码,现在只需要两三个小时就能搞定。但从2013年开始,chrome放弃chromium引擎而使用最新的Blink引擎(基于Webkit2-苹果公司在2010年退出的新Webkit引擎)。
Opera浏览器是一款挪威Opera Software ASA公司制作的支持多页面标签式浏览器。是夸平台浏览器可以在Windows、Mac、linux三个操作系统平台上运行。为了减少研发成本,Opera在2013年2月宣布放弃Presto引擎,转而跟随Chrome使用Webkit分之的Chromium引擎作为自家浏览器核心引擎。在Chrome与2013年推出Blink引擎后,Opera也紧跟其脚步表示将转而使用Blink作为浏览器核心引擎。
Mozilla Firefox是一个开源网页浏览器。Firefox使用的是Gecko内核。Gecko是网景公司开发的引擎,但后来网景公司解散。Mozilla基金会继续推动着Gecko的发展。时至今日,Gecko任继续由Mozilla的雇员和义工所维护和发展。
<!DOCTYPE>声明处于<html>标签之前。此标签可告知浏览器文档使用哪种HTML或XHTML规范。在制作网页时都需要定义文档类型。即doctype。如果不声明网页的文档类型,浏览器在解析时会以怪异模式解析网页代码,不同浏览器下,怪异模式解析的网页效果差别很大,会造成布局排版的错位,因此,在写html代码前有必要写明文档类型。
常用的DOCKTYPE声明包括:
HTML 5
<!DOCTYPE html>
HTML 4.01 Strict
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
从IE6开始,引入了Standards标准模式,浏览器尝试给符合标准的文档在规范上的正确处理达到在指定浏览器中的程序。
在IE6之前CSS还不够成熟,所有IE5等之前浏览器对CSS支持很差,IE6将对CSS提供更好的支持,然而很多页面时基于旧的布局方式写的,而如果IE6支持CSS则将令这些页面显示不正常,如果在即保证不破坏现有页面,也提供新的渲染机制?
遇到这种问题的一个常见做法就是增加参数和分支,即当某个参数为真时,我们就使用新功能,而如果不为真时就使用旧功能。IE6也是类型这样做的,它将DTD当成这个“参数”,因为以前的页面大家都不会写DTD,所以IE6就假定如果写了DTD就采用对CSS支持更好的布局,而如果没有,则采用兼容之前的布局方式。这就是Quirks模式(怪异模式)。
区别:
总体会有布局、样式解析和脚本执行三个方面区别。
盒模型:在W3C标准中,如果设置一个元素宽度和高度,指的是元素内容的宽度和高度,而在Quirks模式下,IE的宽度和高度还包括碰padding和border。
设置行内元素高度:在standards模式下,给span元素设置width和height都不会生效,而在quirks模式下,则会生效。
代码小兵49806-11 15:28
代码小兵49806-11 15:51
代码小兵49806-11 16:22
代码小兵51603-29 17:28
暴风城-小飞04-06 20:49