ImageVerifierCode 换一换
格式:DOCX , 页数:13 ,大小:27.46KB ,
资源ID:28333204      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/28333204.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(web前端开发面试题汇总.docx)为本站会员(b****8)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

web前端开发面试题汇总.docx

1、web前端开发面试题汇总web前端开发面试题汇总1天前653浏览2评论前端面试题汇总HTML&CSS1. 常用那几种浏览器测试?有哪些内核(Layout Engine)?(Q1) 浏览器:IE,Chrome,FireFox,Safari,Opera。(Q2) 内核:Trident,Gecko,Presto,Webkit。2. 说下行内元素和块级元素的区别?行内块元素的兼容性使用?(IE8 以下)行内元素:会在水平方向排列,不能包含块级元素,设置width无效,height无效(可以设置line-height),margin上下无效,padding上下无效。块级元素:各占据一行,垂直方向排列。从

2、新行开始结束接着一个断行。兼容性:display:inline-block;display:inline;zoom:1;3. 清除浮动有哪些方式?比较好的方式是哪一种?(1)父级div定义height。(2)结尾处加空div标签clear:both。(3)父级div定义伪类:after和zoom。(4)父级div定义overflow:hidden。(5)父级div定义overflow:auto。(6)父级div也浮动,需要定义宽度。(7)父级div定义display:table。(8)结尾处加br标签clear:both。总结:比较好的是第3种方式,简洁方便。4. box-sizing常用的属

3、性有哪些?分别有什么作用?常用的属性:box-sizing: content-box border-box inherit;作用:content-box:宽度和高度分别应用到元素的内容框。在宽度和高度之外绘制元素的内边距和边框(元素默认效果)。border-box:元素指定的任何内边距和边框都将在已设定的宽度和高度内进行绘制。通过从已设定的宽度和高度分别减去边框和内边距才能得到内容的宽度和高度。5. Doctype作用?标准模式与兼容模式各有什么区别?(Q1)告知浏览器的解析器用什么文档标准解析这个文档。DOCTYPE不存在或格式不正确会导致文档以兼容模式呈现。(Q2) 标准模式的排版和JS运

4、作模式都是以该浏览器支持的最高标准运行。在兼容模式中,页面以宽松的向后兼容的方式显示,模拟老式浏览器的行为以防止站点无法工作。6. HTML5 为什么只需要写?HTML5不基于 SGML,因此不需要对DTD进行引用;但是需要doctype来规范浏览器的行为(让浏览器按照它们应该的方式来运行)。 而HTML4.01基于SGML,所以需要对DTD进行引用,才能告知浏览器文档所使用的文档类型。7. 页面导入样式时,使用link和import有什么区别?(1)link属于XHTML标签,除了加载CSS外,还能用于定义RSS, 定义rel连接属性等作用;而import是CSS提供的,只能用于加载CSS;

5、(2)页面被加载的时,link会同时被加载,而import引用的CSS会等到页面被加载完再加载;(3)import是CSS2.1 提出的,只在IE5以上才能被识别,而link是XHTML标签,无兼容问题。总之,link要优于import。8. 介绍一下你对浏览器内核的理解?IE浏览器的内核Trident、Mozilla的Gecko、Chrome的Blink(WebKit的分支)、Opera内核原为Presto,现为Blink;内核主要分成两部分:渲染引擎(layout engineer或Rendering Engine)和JS引擎渲染引擎:负责取得网页的内容(HTML、XML、图像等等)、整理

6、讯息(例如加入CSS等),以及计算网页的显示方式,然后会输出至显示器或打印机。浏览器的内核的不同对于网页的语法解释会有不同,所以渲染的效果也不相同。所有网页浏览器、电子邮件客户端以及其它需要编辑、显示网络内容的应用程序都需要内核。JS引擎则:解析和执行javascript来实现网页的动态效果。 最开始渲染引擎和JS引擎并没有区分的很明确,后来JS引擎越来越独立,内核就倾向于只指渲染引擎。9. html5有哪些新特性?如何处理HTML5新标签的浏览器兼容问题?如何区分 HTML 和 HTML5?(Q1) HTML5 现在已经不是 SGML 的子集,主要是关于图像,位置,存储,多任务等功能的增加。

7、(1)绘画 canvas;(2)用于媒介回放的 video 和 audio 元素;(3)本地离线存储 localStorage 长期存储数据,浏览器关闭后数据不丢失; (4)sessionStorage 的数据在浏览器关闭后自动删除;(5)语意化更好的内容元素,比如 article、footer、header、nav、section; (6)表单控件,calendar、date、time、email、url、search;(7)新的技术webworker, websocket, Geolocation;(Q2) IE8/IE7/IE6支持通过document.createElement方法产生

8、的标签, 可以利用这一特性让这些浏览器支持HTML5新标签, 浏览器支持新标签后,还需要添加标签默认的样式。 也可以直接使用成熟的框架、比如html5shim,10. 简述一下你对HTML语义化的理解?用正确的标签做正确的事情。1. html语义化让页面的内容结构化,结构更清晰,便于对浏览器、搜索引擎解析;2. 即使在没有样式CSS情况下也以一种文档格式显示,并且是容易阅读的;搜索引擎的爬虫也依赖于HTML标记来确定上下文和各个关键字的权重,利于SEO;3. 使阅读源代码的人对网站更容易将网站分块,便于阅读维护理解。11 #常见兼容性问题?png24位的图片在iE6浏览器上出现背景,解决方案是

9、做成PNG8.浏览器默认的margin和padding不同。解决方案是加一个全局的margin:0;padding:0;来统一。IE6双边距bug:块属性标签float后,又有横行的margin情况下,在ie6显示margin比设置的大。浮动ie产生的双倍距离#boxfloat:left;width:10px;margin:000100px;这种情况之下IE会产生20px的距离,解决方案是在float的标签样式控制中加入_display:inline;将其转化为行内属性。(_这个符号只有ie6会识别)渐进识别的方式,从总体中逐渐排除局部。首先,巧妙的使用“9”这一标记,将IE游览器从所有情况中

10、分离出来。接着,再次使用“+”将IE8和IE7、IE6分离开来,这样IE8已经独立识别。css.bbbackground-color:#f1ee18;/所有识别/.background-color:#00deff9;/IE6、7、8识别/+background-color:#a200ff;/IE6、7识别/_background-color:#1e0bd1;/IE6识别/IE下,可以使用获取常规属性的方法来获取自定义属性,也可以使用getAttribute()获取自定义属性;Firefox下,只能使用getAttribute()获取自定义属性.解决方法:统一通过getAttribute()获取

11、自定义属性.IE下,even对象有x,y属性,但是没有pageX,pageY属性;Firefox下,event对象有pageX,pageY属性,但是没有x,y属性.解决方法:(条件注释)缺点是在IE浏览器下可能会增加额外的HTTP请求数。Chrome中文界面下默认会将小于12px的文本强制按照12px显示,可通过加入CSS属性-webkit-text-size-adjust:none;解决.超链接访问过后hover样式就不出现了被点击访问过的超链接样式不在具有hover和active了解决方法是改变CSS属性的排列顺序:L-V-H-A:a:linka:visiteda:hovera:activ

12、e12.HTML5的离线储存,描述一下 cookies,sessionStorage 和 localStorage 的区别?cookie在浏览器和服务器间来回传递。 sessionStorage和localStorage不会sessionStorage和localStorage的存储空间更大;sessionStorage和localStorage有更多丰富易用的接口;sessionStorage和localStorage各自独立的存储空间;CSS一、 介绍一下CSS的盒子模型?(1)有两种, IE 盒子模型、标准 W3C 盒子模型;IE的content部分包含了 border 和 pading

13、;(2)盒模型: 内容(content)、填充(padding)、边界(margin)、 边框(border).二、 CSS 选择符有哪些?哪些属性可以继承?优先级算法如何计算?新增伪类有 那些?1.id选择器( # myid)2.类选择器(.myclassname)3.标签选择器(div, h1, p)4.相邻选择器(h1 + p)5.子选择器(ul li)6.后代选择器(li a)7.通配符选择器( * )8.属性选择器(arel = external)9.伪类选择器(a: hover, li: nth - child)可继承的样式:font-size font-family color,

14、 UL LI DL DD DT;不可继承的样式:border padding margin width height优先级就近原则,同权重情况下样式定义最近者为准;载入样式以最后载入的定位为准;优先级为: !important id class tag ,important 比 内联优先级高三、 CSS3新增伪类举例p:first-of-type 选择属于其父元素的首个 元素的每个 元素。p:last-of-type 选择属于其父元素的最后 元素的每个 元素。p:only-of-type 选择属于其父元素唯一的 元素的每个 元素。p:only-child 选择属于其父元素的唯一子元素的每个 元

15、素。p:nth-child(2) 选择属于其父元素的第二个子元素的每个 元素。:enabled :disabled 控制表单控件的禁用状态。:checked 单选框或复选框被选中。四、 如何居中div?如何居中一个浮动元素? 水平居中:给div设置一个宽度,然后添加margin:0 auto属性divwidth:200px; margin:0 auto; 垂直居中:确定容器的宽高 :如宽500 高 300 的层设置层的外边距.div Width:500px height:300px;/高度可以不设Margin: -150px 0 0 -250px; position:relative;相对定位

16、background-color:pink;/方便看效果left:50%; top:50%;五、 列出display的值,说明他们的作用。position的值, relative和absolute定位 原点是1. block 象块类型元素一样显示。none 缺省值。象行内元素类型一样显示。inline-block 象行内元素一样显示,但其内容象块类型元素一样显示。list-item 象块类型元素一样显示,并添加样式列表标记。2. absolute 生成绝对定位的元素,相对于 static 定位以外的第一个父元素进行定位。 fixed (老IE不支持)生成绝对定位的元素,相对于浏览器窗口进行定位

17、。 relative生成相对定位的元素,相对于其正常位置进行定位。 static 默认值。没有定位,元素出现在正常的流中(忽略 top, bottom, left, right z-index 声明) inherit 规定从父元素继承 position 属性的值。六、 CSS3有哪些新特性 #? CSS3实现圆角(border-radius:8px), 阴影(box-shadow:10px), 对文字加特效(text-shadow、) 线性渐变(gradient) 旋转(transform) transform:rotate(9deg) scale(0.85,0.90) translate(0

18、px,-30px) skew(-9deg,0deg);/旋转,缩放,定位,倾斜 增加了更多的CSS选择器 多背景 rgba七、 一个满屏 品 字布局 如何设计八、 为什么要初始化CSS样式。因为浏览器的兼容问题,不同浏览器对有些标签的默认值是不同的,如果没对CSS初始化往往会出现浏览器之间的页面显示差异。初始化样式会对SEO有一定的影响,但鱼和熊掌不可兼得,但力求影响最小的情况下初始化。 最简单的初始化方法就是: padding: 0; margin: 0; (不建议) 如淘宝的样式初始化:body, h1, h2, h3, h4, h5, h6, hr, p, blockquote, dl,

19、 dt, dd, ul, ol, li, pre, form, fieldset, legend, button, input,textarea, th, td margin:0; padding:0; body, button, input, select, textarea font:12px/1.5tahoma, arial, 5b8b4f53; h1, h2, h3, h4, h5, h6 font-size:100%; address, cite, dfn, em, var font-style:normal; code, kbd, pre, samp font-family:cou

20、riernew, courier, monospace; small font-size:12px; ul, ol list-style:none; a text-decoration:none; a:hover text-decoration:underline; sup vertical-align:text-top; sub vertical-align:text-bottom; legend color:#000; fieldset, img border:0; button, input, select, textarea font-size:100%; table border-c

21、ollapse:collapse; border-spacing:0; 九、 absolute的containing block计算方式跟正常流有什么不同?十、 position跟display、margin collapse、overflow、float这些特性相互叠加后会 怎么样?十一、 对BFC规范的理解?W3C CSS 2.1 规范中的一个概念,它决定了元素如何对其内容进行定位,以及与其他元素的关 系和相互作用。十二、 css定义的权重以下是权重的规则:标签的权重为1,class的权重为10,id的权重为100,以下例子是演示各种定义的权重值:/权重为1/div /权重为10/.cla

22、ss1 /权重为100/id1 /权重为100+1=101/id1 div /权重为10+1=11/.class1 div /权重为10+10+1=21/ .class1 .class2 div如果权重相同,则最后定义的样式会起作用,但是应该避免这种情况出现十三、 解释下浮动和它的工作原理?清除浮动的技巧十四、 用过媒体查询,针对移动端的布局吗?十五、 使用 CSS 预处理器吗?喜欢那个?SASS十六、 如果需要手动写动画,你认为最小时间间隔是多久,为什么?多数显示器默认频率是60Hz,即1秒刷新60次,所以理论上最小间隔为:1/601000ms 16.7ms十七、 display:inlin

23、e-block 什么时候会显示间隙,如何解决?移除空格、使用margin负值、使用font-size:0、letter-spacing、word-spacingJavaScript介绍js的数据类型ECMAScript 有 5 种原始类型(primitive type),即 Undefined、Null、Boolean、Number 和String。js有哪些内置对象?数据封装类对象(五种):Object、Array、Boolean、Number 和 String ;其他对象:Function、Arguments、Math、Date、RegExp、Errorthis对象的理解 this总是指向

24、函数的直接调用者(所谓当前对象,而非间接调用者) 如果有new关键字,this指向new出来的那个对象; 在事件中,this指向触发这个事件的对象,特殊的是IE中的attachEvent中的this总是指向全局对象Window。eval()是做什么的?把对应的字符串解析成JS代码并运行;应该避免使用eval-不安全,非常耗性能(2次,一次解析成js语句,一次执行)。由JSON字符串转换为JSON对象的时候可以用eval,var obj =eval(+ str +)。DOM怎样添加、移除、移动、复制、创建和查找节点 创建新节点 创建一个DOM片段 createDocumentFragment()

25、 创建一个具体的元素 createElement() 创建一个文本节点createTextNode() 添加、移除、替换、插入 appendChild() removeChild() replaceChild() insertBefore() 在已有的子节点前插入一个新的子节点:? 查找 通过标签名称 : getElementsByTagName(). 通过元素的Name属性的值(IE容错能力较强,会得到一个数组,其中包括id等于name值的) :getElementsByName(). 通过元素Id,唯一性:getElementById()null和undefined的区别?null是一个表

26、示”无”的对象,转为数值时为0;undefined是一个表示”无”的原始值,转为数值时为NaN。undefined:(1)变量被声明了,但没有赋值时,就等于undefined。(2) 调用函数时,应该提供的参数没有提供,该参数等于undefined。(3)对象没有赋值的属性,该属性的值为undefined。(4)函数没有返回值时,默认返回undefined。null:(1) 作为函数的参数,表示该函数的参数不是对象。(2) 作为对象原型链的终点。new操作符具体干了什么呢?(1)创建一个空对象,并且 this 变量引用该对象,同时还继承了该函数的原型。(2)属性和方法被加入到 this 引用的

27、对象中。(3)新创建的对象由 this 所引用,并且最后隐式的返回 this 。JSON 的了解?JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。它是基于JavaScript的一个子集。数据格式简单, 易于读写, 占用带宽小。 格式:采用键值对,例如:age:12, name:backcall() 和 apply() 的区别和作用?apply()函数有两个参数:第一个参数是上下文,第二个参数是参数组成的数组。如果上下文是null,则使用全局对象代替。 如:function.apply(this,1,2,3);call()的第一个参数是上下文,后续是

28、实例传入的参数序列。 如:function.call(this,1,2,3);如何获取UA?什么是ua?function whatBrowser() document.Browser.Name.value=navigator.appName; document.Browser.Version.value=navigator.appVersion; document.Browser.Code.value=navigator.appCodeName; document.Browser.Agent.value=navigator.userAgent; 其他1. HTTP状态码知道哪些?100 Con

29、tinue 继续,一般在发送post请求时,已发送了http header之后服务端将返回此信息,表示确认,之后发送具体参数信息 200 OK 正常返回信息 201 Created 请求成功并且服务器创建了新的资源 202 Accepted 服务器已接受请求,但尚未处理 301 Moved Permanently 请求的网页已永久移动到新位置。 302 Found 临时性重定向。 303 See Other 临时性重定向,且总是使用 GET 请求新的 URI。 304 Not Modified 自从上次请求后,请求的网页未修改过。 400 Bad Request 服务器无法理解请求的格式,客户

30、端不应当尝试再次使用相同的内容发起请求。 401 Unauthorized 请求未授权。 403 Forbidden 禁止访问。 404 Not Found 找不到如何与 URI 相匹配的资源。 500 Internal Server Error 最常见的服务器端错误。 503 Service Unavailable 服务器端暂时无法处理请求(可能是过载或维护)。1. 你有哪些性能优化的方法?(1) 减少http请求次数:CSS Sprites, JS、CSS源码压缩、图片大小控制合适;网页Gzip,CDN托管,data缓存 ,图片服务器。 (2) 前端模板 JS+数据,减少由于HTML标签导致的带宽浪费,前端用变量保存AJAX请求结果,每次操作本地变量,不用请求,减少请求次数 (3) 用innerHTML代替DOM操作,减少DOM操作次数,优化javascript性能。 (4) 当需要设置的样式很多时设置className而不是直接操作style。 (5) 少用全局变量、缓存DOM节点查找的结果。减少IO读取操作。 (6) 避免使用CSS Expression(css表达式)又称Dyn

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1