元素中。顺序表包含在
元素中。HTML元素不能用作语义用途以外的其他目的。例如:包含标题,但并非用于放大文本。
包含大段引述,但并非用于文本缩进。空白段落元素()并非用于跳行。文本并不直接包含任何样式信息。例如:不使用或等格式标记。类或ID中不引用颜色或位置。18.absolute的containingblock计算方式跟正常流有什么不同?19.position跟display、margincollapse、overflow、float这些特性相互叠加后会怎么样?20.对BFC规范的理解?(W3CCSS2.1规范中的一个概念,它决定了元素如何对其内容进行定位,以及与其他元素的关系和相互作用。)21.iframe有那些缺点?*iframe会阻塞主页面的Onload事件;*iframe和主页面共享连接池,而浏览器对相同域的连接有限制,所以会影响页面的并行加载。 http://www.qikuedu.com使用iframe之前需要考虑这两个缺点。如果需要使用iframe,最好是通过javascript动态给iframe添加src属性值,这样可以可以绕开以上两个问题。22.css定义的权重以下是权重的规则:标签的权重为1,class的权重为10,id的权重为100,以下例子是演示各种定义的权重值:div{}.class1{}#id1{}#id1div{}.class1div{}.class1.class2div{}如果权重相同,则最后定义的样式会起作用,但是应该避免这种情况出现23.eval是做什么的?它的功能是把对应的字符串解析成JS代码并运行;避免使用eval,不安全,非常耗性能(2次,一次解析成js语句,一次执行)。23.写一个通用的事件侦听器函数`//event(事件)工具集,来源:https://github.com/markyunmarkyun.Event={//页面加载完成后readyEvent:function(fn){if(fn==null){fn=document;}varoldonload=window.onload;if(typeofwindow.onload!='function'){window.onload=fn;}else{ http://www.qikuedu.comwindow.onload=function(){oldonload();fn();};}},//视能力分别使用dom0||dom2||IE方式来绑定事件//参数:操作的元素,事件名称,事件处理程序addEvent:function(element,type,handler){if(element.addEventListener){//事件类型、需要执行的函数、是否捕捉element.addEventListener(type,handler,false);}elseif(element.attachEvent){element.attachEvent('on'+type,function(){handler.call(element);});}else{element['on'+type]=handler;}},//移除事件removeEvent:function(element,type,handler){if(element.removeEnentListener){element.removeEnentListener(type,handler,false);}elseif(element.datachEvent){element.detachEvent('on'+type,handler);}else{element['on'+type]=null;}},//阻止事件(主要是事件冒泡,因为IE不支持事件捕获)stopPropagation:function(ev){if(ev.stopPropagation){ev.stopPropagation();}else{ev.cancelBubble=true;}},//取消事件的默认行为preventDefault:function(event){if(event.preventDefault){event.preventDefault();}else{event.returnValue=false; http://www.qikuedu.com}},//获取事件目标getTarget:function(event){returnevent.target||event.srcElement;},//获取event对象的引用,取到事件的所有信息,确保随时能使用event;getEvent:function(e){varev=e||window.event;if(!ev){varc=this.getEvent.caller;while(c){ev=c.arguments[0];if(ev&&Event==ev.constructor){break;}c=c.caller;}}returnev;}};24.99%的网站都需要被重构是那本书上写的?*网站重构:应用web标准进行设计(第2版)25.什么叫优雅降级和渐进增强?优雅降级:Web站点在所有新式浏览器中都能正常工作,如果用户使用的是老式浏览器,则代码会检查以确认它们是否能正常工作。由于IE独特的盒模型布局问题,针对不同版本的IE的hack实践过优雅降级了,为那些无法支持功能的浏览器增加候选方案,使之在旧式浏览器上以某种形式降级体验却不至于完全失效.渐进增强:从被所有浏览器支持的基本功能开始,逐步地添加那些只有新式浏览器才支持的功能,向页面增加无害于基础浏览器的额外样式和功能的。当浏览器支持时,它们会自动地呈现出来并发挥作用。26.Node.js的适用场景高并发、聊天、实时消息推送27.WEB应用从服务器主动推送Data到客户端有那些方式?html5websoketWebSocket通过FlashXHR长时间连接XHRMultipartStreaming http://www.qikuedu.com不可见的Iframe*如何区分HTML5:DOCTYPE声明新增的结构元素功能元素简述一下你对HTML语义化的理解?用正确的标签做正确的事情。html语义化让页面的内容结构化,结构更清晰,便于对浏览器、搜索引擎解析;即使在没有样式CSS情况下也以一种文档格式显示,并且是容易阅读的;搜索引擎的爬虫也依赖于HTML标记来确定上下文和各个关键字的权重,利于SEO;使阅读源代码的人对网站更容易将网站分块,便于阅读维护理解。 http://www.qikuedu.comHTML5的离线储存怎么使用,工作原理能不能解释一下?在用户没有与因特网连接时,可以正常访问站点或应用,在用户与因特网连接时,更新用户机器上的缓存文件。原理:HTML5的离线存储是基于一个新建的.appcache文件的缓存机制(不是存储技术),通过这个文件上的解析清单离线存储资源,这些资源就会像cookie一样被存储了下来。之后当网络在处于离线状态下时,浏览器会通过被离线存储的数据进行页面展示。如何使用:1、页面头部像下面一样加入一个manifest的属性;2、在cache.manifest文件的编写离线存储的资源;CACHEMANIFEST#v0.11CACHE:js/app.jscss/style.cssNETWORK:resourse/logo.pngFALLBACK://offline.html3、在离线状态时,操作window.applicationCache进行需求实现。浏览器是怎么对HTML5的离线储存资源进行管理和加载的呢?在线的情况下,浏览器发现html头部有manifest属性,它会请求manifest文件,如果是第一次访问app,那么浏览器就会根据manifest文件的内容下载相应的资源并且进行离线存储。如果已经访问过app并且资源已经离线存储了,那么浏览器就会使用离线的资源加载页面,然后浏览器会对比新的manifest文件与旧的manifest文件,如果文件没有发生改变,就不做任何操作,如果文件改变了,那么就会重新下载文件中的资源并进行离线存储。离线的情况下,浏览器就直接使用离线存储的资源。请描述一下cookies,sessionStorage和localStorage的区别?cookie是网站为了标示用户身份而储存在用户本地终端(ClientSide)上的数据(通常经过加密)。cookie数据始终在同源的http请求中携带(即使不需要),记会在浏览器和服务器间来回传递。sessionStorage和localStorage不会自动把数据发给服务器,仅在本地保存。存储大小:cookie数据大小不能超过4k。sessionStorage和localStorage虽然也有存储大小的限制,但比cookie大得多,可以达到5M或更大。有期时间: http://www.qikuedu.comlocalStorage存储持久数据,浏览器关闭后数据不丢失除非主动删除数据;sessionStorage数据在当前浏览器窗口关闭后自动删除。cookie设置的cookie过期时间之前一直有效,即使窗口或浏览器关闭iframe有那些缺点?*iframe会阻塞主页面的Onload事件;*搜索引擎的检索程序无法解读这种页面,不利于SEO;*iframe和主页面共享连接池,而浏览器对相同域的连接有限制,所以会影响页面的并行加载。使用iframe之前需要考虑这两个缺点。如果需要使用iframe,最好是通过javascript动态给iframe添加src属性值,这样可以绕开以上两个问题。Label的作用是什么?是怎么用的?label标签来定义表单控制间的关系,当用户选择该标签时,浏览器会自动将焦点转到和标签相关的表单控件上。 Number: HTML5的form如何关闭自动完成功能?给不想要提示的form或某个input设置为autocomplete=off。如何实现浏览器内多个标签页之间的通信?(阿里)WebSocket、SharedWorker;也可以调用localstorge、cookies等本地存储方式;localstorge另一个浏览上下文里被添加、修改或删除时,它都会触发一个事件,我们通过监听事件,控制它的值来进行页面信息通信;注意quirks:Safari在无痕模式下设置localstorge值时会抛出QuotaExceededError的异常;webSocket如何兼容低浏览器?(阿里)AdobeFlashSocket、ActiveXHTMLFile(IE)、基于multipart编码发送XHR、基于长轮询的XHR页面可见性(PageVisibilityAPI)可以有哪些用途?通过visibilityState的值检测页面当前是否可见,以及打开网页的时间等在页面被切换到其他后台进程的时候,自动暂停音乐或视频的播放; http://www.qikuedu.com如何在页面上实现一个圆形的可点击区域?1、map+area或者svg2、border-radius3、纯js实现需要求一个点在不在圆上简单算法、获取鼠标坐标等等实现不使用border画出1px高的线,在不同浏览器的标准模式与怪异模式下都能保持一致的效果。
此文档下载收益归作者所有