最近在看面试题,然后对别人网上提出的面试题做个自问自答吧,算是学习啦
- 描述下渐进增强和优雅降级的不同
我觉得这个渐进增强和优雅降级其实就是不同的两种妥协,这种妥协是对旧版浏览器的妥协,专业点吧
优雅降级就是我一开始构建站点的完整功能,然后针对浏览器测试和修复。web站点在所有新式浏览器中都能正常工作,如果用户使用的是老式浏览器,工程师会为那些无法支持所有功能的浏览器增加候选方案,使之在旧式浏览器上一某种形式降级体验但是却不至于失效。
渐进增强是从浏览器支持的基本功能开始,逐步添加那些只有新式浏览器才支持的功能
- 区别:
- “优雅降级”观点认为应该针对那些最高级、最完善的浏览器来设计网站. 而将那些被认为“过时”或有功能缺失的浏览器下的测试工作安排在开发周期的最后阶段,并把测试对象限定为主流浏览器(如 IE、Mozilla 等)的前一个版本。
- “渐进增强”观点则认为应关注于内容本身。
- 理解:
- "优雅降级"就是首先完整地实现整个网站,包括其中的功能和效果. 然后再为那些无法支持所有功能的浏览器增加候选方案, 使之在旧式浏览器上以某种形式降级体验却不至于完全失效.
- "渐进增强"则是从浏览器支持的基本功能开始, 首先为所有设备准备好清晰且语义化的html及完整内容, 然后再以无侵入的方法向页面增加无害于基础浏览器的额外样式和功能. 当浏览器升级时, 它们会自动呈现并发挥作用.
2.浏览器的结构
- 用户界面(UI)-包括菜单栏,工具栏,地址栏,回退前进按钮,即主窗口之外的部分
- 浏览器引擎 即我们所说的浏览器内核,渲染引擎,主要作用为负责取得页面内容,整理css信息,计算页面的显示方式,然后输出到显示器
- js解释器 也可以成为js内核,主要负责处理js脚本,
- 网络部分 主要是网络调用,http请求,为所有平台提供底层实现
- UI后端 用户绘制基本的窗口部件,
- 数据存储 保存类似于cookie/storage等数据部分
-
- CSS
- CSS3
- css居中的方式
- 请写一个简单的幻灯效果页面
- 什么是无样式内容闪烁?如何避免?
- display:none和visibility:hidden的区别
- 解释浮动和工作原理
- 清除浮动
- 解释CSS Sprits,以及你要如何使用?
- 你最喜欢的图片替换方法是什么?你将如何使用?
- 讨论CSS hacks, 条件引用或其他
- 如何为有功能限制的浏览器提供网页
- 在书写高效CSS时会有哪些问题需要考虑?
- 如何优化网页的打印样式?
- 描述下你曾经使用过的CSS 预处理的优缺点
- 如果设计中使用了非标准的字体, 你将如何实现?
- block, inline和inline-block的区别
- 有哪些隐藏内容的方法(同时还要保证屏幕阅读器可用)
- CSS选择器级别
- alt和title的区别
- 知道bfc吗?
- 行内元素,块级元素,空元素各有哪些?
- html
- jquery问题
-
一些编程题
- 匿名函数变量
- this指向
- 定时
-
js算法题