重构是不改变代码外的行为前提下对代码做出修改,改进程序的内部结构。身为一个前端工作者我们在拿到需求的时候不应该立即编写代码,应以整体来考虑,包括代码的兼容性,语义,业务术语的命名,优化等。
一: 1.浏览器内核? IE(ie内核) 火狐(Gecko) 谷歌(webkit) 欧朋(PResto) 2.hack写法? -0- 欧朋 -ms- 微软 -moz- 火狐 -webkit- 谷歌 _ IE6 * IE7 /0 IE8+ /9 ie6+... ... 3.w3c标准及认识? 标签闭合、正确嵌套、代码小写,外链样式和脚本,结构、表现和行为分离,容易维护、改版方便。 4.xhtml、html区别? 标签闭合、正确嵌套、代码小写 5.前端分为哪三层? 结构 html、样式 CSS、行为 js 6.css样式(选择器)优先级? ①行间> 内嵌 >外链 >导入式 ②行间 >ID >标签 >类(这个不确定) 7.css层叠性(一块区域,有多个css文件设置它)? 样式不冲突,优先级相同;样式有冲突,根据选择器优先级决定 8.为什么要reset(重置)css? 让各个浏览器统一样式显示 9.页面三种渲染模式? 怪异模式、标准模式和几乎标准模式 10.标准/怪异模式区别? 盒子模型渲染模式不同(当前模式 document.compatMode ;值是:9中的3选1) 11.盒子模型? 内容 + border+ padding+ margin 12.块级元素/行内元素? 块级元素: div 、p 、h1~h6 、ul... ... 行内元素: a 、b 、i 、span 、input... ... 13.什么是语义化标签?好处是什么? 如:strong、header、footer 等标签,利于搜索引擎抓取(SEO) 14.怎么网站优化,提高访问速度? ①文件合并,减少请求 ②压缩文件,减小体积 ③缓存 ④使用CDN托管