优雅降级:一开始就构建站点的完整功能,然后针对浏览器测试和修复。
渐进增强:一开始只构建站点的最少特性,然后不断针对各个浏览器追加功能。
博客:http://fatesinger.com/764.html
(好犀利耐寻味的博客^_^)http://bigc.at/user-need.orz
优雅降级:
使用优雅降级方案,Web站点在所有新式浏览器中都能正常工作,如果用户使用的是老式浏览器,则代码会检查以确认它们是否能正常工作。由于IE独特的盒模型布局问题,绝大多数Web设计师和开发者都通过专门的样式表或针对不同版本的IE的hack实践过优雅降级了;
使用优雅降级技术时,你必须首先完整的实现了网站,其中包括所有的功能和效果。然后再为那些无法支持所有功能的浏览器增加候选方案,使之在旧式浏览器上以某种形式降级体验却不至于完全失效。
渐进增强:
从被所有浏览器支持的基本功能开始,逐步地添加那些只有新式浏览器才支持的功能。渐进增强是值得所有开发者采用的做法。渐进增强方案并不假定所有用户都支持javascript,而总是提供一种候补方法,确保用户可以访问(主要的)内容。
使用渐进增强时,无需为了一个已成型的网站在旧式浏览器下正常工作而做逆向工程。首先,只需要为所有的设备和浏览器准备好清晰且语义化的HTML以及完善的内容,然后再以无侵入(unobtrusive)的方式向页面增加无害于基础浏览器的额外样式和功能。当浏览器升级时,它们会自动地呈现出来并发挥作用。
自己的小小感悟:
刚开始的时候,总觉得,一个合格的前端工程师应该是这样的:每一个用户都有权利享受相同的用户体验。这是一种责任更是一种考验。后来,一半是因为看书浏览博客影响所致,一半是实际操作所得——想让网站在任何环境下看起来都保持一致是不可能的。优雅降级和渐进增强的选择应该考虑到你的网站理念是什么,你网站的核心用户群是谁。如果某种新体验能够保证在核心用户群中被完整体验且能够保证在安全的比例上,采用又何妨呢?而对于一般用户我们尽量提供完整的信息。