HTML根基面试题汇总
1 DOCTYPE有什么作用?标准模式与混淆模式怎样区分?它们有何意义?
告诉阅读器使用哪个版本的HTML标准来渲染文档。DOCTYPE不存在或情势不准确会致使HTML文档以混淆模式显现。
标准模式(Standards mode)以阅读器支撑的最高标准运转;混淆模式(Quirks mode)中页面是一种比力宽松的向后兼容的方式显示。
2 HTML5为什么只需要写 <!DOCTYPE HTML>?
HTML5不基于SGML(Standard Generalized Markup Language 标准通用标志说话),因此不需要对DTD(DTD 文档类型定义)停止援用,但是需要DOCTYPE来标准阅读器行动。
HTML4.01基于SGML,所以需要援用DTD。才能告知阅读器文档所使用的文档类型,如下:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
3 行内元素是什么?块级元素是什么? 空(void)元素有那些?
行内元素:a span img input select
块级元素:p ul ol li dl dt dd h1 p
空元素:<br> <hr> <link> <meta>
4 页面导入样式时,使用link和@import有什么不同?
雷同的地方,都是外部援用CSS方式,不同:
link是xhtml标签,除了加载css外,还可以定义RSS等其他事务;@import属于CSS范围,只能加载CSS
link援用CSS时候,页面载入时同时加载;@import需要在页面完全加载今后加载,并且@import被援用的CSS会比及援用它的CSS文件被加载完才加载
link是xhtml标签,无兼容问题;@import是在css2.1提出来的,低版本的阅读器不支撑
link支撑使用javascript操纵去改动样式,而@import不支撑
link方式的样式的权重高于@import的权重
import在html使用时候需要
<style type="text/css">
标签
5 无样式内容闪耀(FOUC)Flash of Unstyle Content
@import导入CSS文件会比及文档加载完后再加载CSS样式表。因此,在页面DOM加载完成到CSS导入完成之间会有一段时间页面上的内容是没有样式的。
解决办法:使用link标签加载CSS样式文件。由于link是次序加载的,这样页面会比及CSS下载完之后再下载HTML文件,这样先规划好,就不会显现FOUC问题。
6 介绍一下你对阅读器内核的懂得?
主要分成两部分:渲染引擎(Layout Engine或Rendering Engine)和JS引擎。
渲染引擎:负责取得网页的内容(HTML、XML、图像等等)、整理讯息(例如参加CSS等),乃至运算网页的显示方式,然后会输出至显示器或打印机。阅读器的内核的不一样关于网页的语法说明会有不一样,所以渲染的结果也不雷同。
JS引擎:解析和施行javascript来实现网页的动态结果。
最开端渲染引擎和JS引擎并没有区分的很明白,后来JS引擎越来越独立,内核就倾向于只指渲染引擎。
7 常见的阅读器内核是什么?
Trident( MSHTML ):IE MaxThon TT The World 360 搜狗阅读器
Geckos:Netscape6及以上版本 FireFox Mozilla Suite/SeaMonkey
Presto:Opera7及以上(Opera内核原为:Presto,现为:Blink)
Webkit:Safari Chrome
8 HTML5是什么新特性,移除了那些元素?怎样处置HTML5新标签的阅读器兼容问题?怎样区分HTML和HTML5
新增添了图像、位置、储备、多任务等功效。
新增元素:
canvas
用于媒介回放的video和audio元素
当地离线储备。localStorage长期储备数据,阅读器关闭后数据不丧失;sessionStorage的数据在阅读器关闭后主动删除
语意化更好的内容元素,比方 article footer header nav section
位置API:Geolocation
表单控件,calendar date time email url search
新的技术:web worker(web worker是运转在后台的 JavaScript,独立于其他足本,不会影响页面的机能。您可以连续做任何情愿做的事情:点击、拔取内容等等,而此时 web worker 在后台运转) web socket
拖放API:drag、drop
移除的元素:
纯展现的元素:basefont big center font s strike tt u
机能较差元素:frame frameset noframes
区分:
DOCTYPE声明的方式是区分重要因素
按照新增添的构造、功效来区分
9 简述一下你对HTML语义化的懂得?
去除或丧失样式的时候能够让页面显现出清楚的构造。
有益于SEO和搜索引擎创立良好沟通,有助于爬虫抓取更多的信息,爬虫依靠于标签来肯定上下文和各个关键字的权重。
利便其它设备解析。
便于团队开发和保护,语义化按照可读性。
10 HTML5的文件离线贮存如何使用,工作道理是啥?
在线状况下,阅读器发明HTML头部有manifest属性,它会恳求manifest文件,假如是第一次拜访,那么阅读器就会按照manifest文件的内容下载响应的资源,并停止离线储备。假如已经拜访过并且资源已经离线储备了,那么阅读器就会使用离线的资源加载页面。然后阅读器会对照新的manifest文件与旧的manifest文件,假如文件没有发生改动,就不会做任何操纵,假如文件改动了,那么就会从新下载文件中的资源,并且停止离线储备。例如,
在页面头部参加manifest属性
<html manifest='cache.manifest'>
在cache.manifest文件中编写离线储备的资源
CACHE MANIFEST #v0.11 CACHE: js/app.js css/style.css NETWORK: Resourse/logo.png FALLBACK: //offline.html
11 cookies,sessionStorage和localStorage的不同?
共同点:都是留存在阅读器端,且是同源的。
不同:
cookies是为了标识会员身份而储备在会员当地终端上的数据,始终在同源http恳求中携带,即cookies在阅读器和效劳器间来回传递,而sessionstorage和localstorage不会主动把数据发给效劳器,仅在当地留存。
储备大小的限制不一样。cookie留存的数据很小,不克不及超越4k,而sessionstorage和localstorage留存的数据大,可到达5M。
数据的有效期不一样。cookie在设定的cookie过期时间此前不断有效,即便窗口或者阅读器关闭。sessionstorage仅在阅读器窗口关闭此前有效。localstorage始终有效,窗口和阅读器关闭也不断留存,用作长久数据留存。
作用域不一样。cookie在所有的同源窗口都是同享;sessionstorage不在不一样的阅读器同享,即便统一页面;localstorage在所有同源窗口都是同享
12 iframe框架有那些优缺陷?
长处:
iframe能够纹丝不动的把嵌入的网页展示出来。
假如有多个网页援用iframe,那么你只需要修改iframe的内容,就可以实现调取的每一个页面内容的更换,利便快速。
网页假如为了统一风格,头部和版本都是一样的,就可以写成一个页面,用iframe来嵌套,可以增添代码的可重用。
假如碰到加载迟缓的第三方内容如图标和广告,这些问题可以由iframe来解决。
缺陷:
搜索引擎的爬虫程序没法解读这种页面
框架构造中显现各种滚动条
使用框架构造时,包管设定准确的导航链接。
iframe页面会增添效劳器的http恳求
13 label的作用是啥? 是如何用的?
label标签用来定义表单控件间的关系,当会员选中该标签时,阅读器会主动将焦点转到和标签相关的表单控件上。label 中有两个属性是非常有用的, FOR和ACCESSKEY。
FOR属性功效:表示label标签要绑定的HTML元素,你点击这个标签的时候,所绑定的元素将猎取焦点。例如,
<Label FOR="InputBox">姓名</Label><input ID="InputBox" type="text">
ACCESSKEY属性功效:表示拜访label标签所绑定的元素的热键,当您按下热键,所绑定的元素将猎取焦点。例如,
<Label FOR="InputBox" ACCESSKEY="N">姓名</Label><input ID="InputBox" type="text">
14 HTML5的form怎样关闭主动完成功效?
HTML的输入框可以具有主动完成的功效,当你往输入框输入内容的时候,阅读器会从你之前的同名输入框的历史记载中查寻出相似的内容并列在输入框下面,这样就不消全部输入进去了,直接选中列表中的项目就可以了。但有时候我们但愿关闭输入框的主动完成功效,例如当会员输入内容的时候,我们但愿使用AJAX技术从数据库搜索并列举而不是在会员的历史记载中搜索。
办法:
在IE的internet选项菜单中里的主动完成里面设定
设定form输入框的autocomplete为on或者off来来开启输入框的主动完成功效
15 怎样实现阅读器内多个标签页之间的通讯?
WebSocket SharedWorker
也可以调取 localstorge、cookies 等当地储备方式。 localstorge 在另一个阅读上下文里被增加、修改或删除时,它都会触发一个事件,我们通过监听事件,操纵它的值来停止页面信息通讯。
留意:Safari 在无痕模式下设定 localstorge 值时会抛出QuotaExceededError 的非常
16 webSocket怎样兼容低阅读器?
Adobe Flash Socket ActiveX HTMLFile (IE) 基于 multipart 编码发送 XHR 基于长轮询的 XHR
援用WebSocket.js这个文件来兼容低版本阅读器。
16 页面可见性(Page Visibility)API 可以是什么用处?
通过visibility state的值得检测页面当前可否可见,乃至翻开网页的时间。
在页面被切换到其他后台进程时,主动暂停音乐或视频的播放。
17 怎样在页面上实现一个圆形的可点击区域?
map+area或者svg
border-radius
纯js实现,一个点不在圆上的算法
18 实现不使用 border 画出1px高的线,在不一样阅读器的Quirks mode和CSS Compat模式下都能保持统一结果
<p style="height:1px;overflow:hidden;background:red"></p>
19 网页验证码是干嘛的,是为理解决什么平安问题?
区分会员是运算机还是人的程序;
可以防止歹意破解密码、刷票、论坛灌水;
20 title与h1的不同、b与strong的不同、i与em的不同?
title属性没有明白意义,只表示标题;h1表示层次明白的标题,对页面信息的抓取也有很大的影响
strong标明重点内容,语气增强含义;b是无意义的视觉表示
em表示强调文本;i是歪体,是无意义的视觉表示
视觉样式标签:b i u s
语义样式标签:strong em ins del code
21 元素的alt和title有什么异同?
在alt和title同时设定的时候,alt作为图片的替换文字显现,title是图片的说明文字。
相关引荐:
前端面试题小结
CSS根基面试题小结、
JavaScript面试根基知识题分享
以上就是HTML根基面试题汇总的具体内容,更多请关注百分百源码网其它相关文章!