最近准备换工作了,感觉不常用的东西已经忘掉了,在这里整理一下
1、浏览器的标准模式和怪异模式
标准模式:浏览器按照W3C标准解析代码
怪异模式:浏览器按照自己的方式解析执行代码,不同的的浏览器有不同的解析方式,通常,触发怪异模式就是没有声明DOCTYPE
因此,一定要声明文档类型。
2、网页验证码是干嘛的?是为了解决什么安全问题?
服务器端随机生成验证码字符串,保存在内存中,并写入图片,发送给浏览器端显示,浏览器端输入验证码图片上字符,然后提交服务器端,提交的字符和服务器端保存的该字符比较是否一致,一致就继续,否则返回提示。
因此,验证码只是增加攻击者的难度,并不能完全的阻止
3、对web标准以及w3c的理解与认识?
(1)web标准规范要求,书写标签必须闭合、标签小写、不乱嵌套,可提高搜索机器人对网页内容的搜索几率。
(2)建议使用外链css和js脚本,从而达到结构与行为、结构与表现的分离,提高页面的渲染速度,能更快地显示页面的内容。
(3)样式与标签的分离,更合理的语义化标签,使内容能被更多的用户所访问、内容能被更广泛的设备所访问、更少的代码和组件, 从而降低维护成本、改版更方便
(4)不需要变动页面内容,便可提供打印版本而不需要复制内容,提高网站易用性
遵循w3c制定的web标准,能够使用户浏览者更方便的阅读,使网页开发者之间更好的交流
4、对web标准以及w3c的理解和认识
标签闭合,标签小写,不乱嵌套,提高搜索机器人搜索几率。
使用外链css和js脚本,结构行为表现分离,内容能被更多广泛的设备所访问,更少的代码和组件,容易维护,改版方便,不需要变动页面内容。
5、Html和xhtml有什么区别?
html是一种基本的web网页设计语言,xhtml是一个基于XML的置标语言。
最主要的不同 : XHTML元素必须正确的被嵌套,元素必须关闭,标签必须小写,必须有根元素。
6、常见浏览器的内核
Safari:webkit内核
Chrome:webkit内核
Firefox:Gecko内核
IE:Trident内核
opera:blink内核
7、svn与git的区别
git是分布式的,svn不是
git把内容按元数据方式存储,而svn是按文件。
git没有一个全局的版本号,svn有。
git的内容完整性优于svn。
git可以有无限个版本库,svn只能有一个指定中央版本库。
8、请写出一些前端性能优化的方式,越多越好
1.减少dom操作
2.部署前,图片压缩,代码压缩
3.优化js代码结构,减少冗余代码
4.减少http请求,合理设置 HTTP缓存
5.使用内容分发cdn加速
6.静态资源缓存
7.图片延迟加载
9、一个页面从输入 URL 到页面加载显示完成,这个过程中都发生了什么?(流程说的越详细越好)
1.浏览器查找域名的 IP 地址
2.这一步包括 DNS 具体的查找过程,包括:浏览器缓存->系统缓存->路由器缓存…
3.浏览器向 web 服务器发送一个 HTTP 请求
4.服务器的永久重定向响应(从 [http://example.com] (http://example.com/) 到 [http://www.example.com](http://www.example.com/))
5.浏览器跟踪重定向地址
6.服务器处理请求
7.服务器返回一个 HTTP 响应
8.浏览器显示 HTML
9.浏览器发送请求获取嵌入在 HTML 中的资源(如图片、音频、视频、CSS、JS等等)
10.浏览器发送异步请求
10、iframe有那些缺点
iframe会阻塞主页面的Onload事件;
搜索引擎的检索程序无法解读这种页面,不利于SEO;
iframe和主页面共享连接池,而浏览器对相同域的连接有限制,所以会影响页面的并行加载。
使用iframe之前需要考虑这两个缺点。如果需要使用iframe,最好是通过javascript动态给iframe添加src属性值,这样可以绕开以上两个问题。