渐进增强(Progressive Enhancement)
针对低版本的浏览器(eg:IE)进行构建页面,保证 最基本的功能,然后再针对高级浏览器(eg:Google)进行效果、交互等方面的改进以及功能的 追加达到更好的用户体验。也就是保证页面的基本内容和功能能被所有的浏览器 正常的访问。对于高级的浏览器,可以逐步的向页面添加无害于基础浏览器的额外的样式和功能, 用来提高用户的体验。
渐进增强的观点是应该关注于内容本身。内容是我们建立网站和页面展示的 诱因,有的需要展示它,有的则需要收集,有的操作,有的寻求,还有的甚至包含以上的种种, 但他们都涉及到了内容。渐进增强就像是奔小康一样,先解决所有人的基本温饱问题 (即所有浏览器的基本内容和功能),再让尽可能多的人过上更加好的小康生活(即对高级浏览器 实现能够提高用户体验的功能)。
![](https://img2020.cnblogs.com/blog/2115066/202009/2115066-20200923212252577-161414897.png)
优雅降级(Graceful Degradation)
从一开始就针对高级浏览器构建完整的页面内容和功能,然后再针对低版本的浏览器进行兼容。 也就是网站在所有的高级浏览器中都能正常工作,如果用户使用的是老式浏览器,则代码会检查确认它们是否 能够正常工作。对于低级浏览器提供"简陋无妨"的体验。
优雅降级的观点是应该针对最高级、最完善的浏览器来设计开发网站。而将那些被认为过时或有功能缺失的 浏览器下的测试工作安排在开发周期的最后阶段,并把测试对象限定为主流浏览器的前一个版本。对于旧版 的浏览器被认为仅能提供“简陋无妨”的浏览体验。但也可以做一些小的调整来适应某个特定的浏览器。但 是它们并非关注的焦点,因此除了修复较大的错误之外,其它的差异将被直接忽略。
![](https://img2020.cnblogs.com/blog/2115066/202009/2115066-20200923212300893-193198205.png)
两者的区别:优雅降级是从复杂的现状开始,并试图逐渐减少用户体验的供给。 渐进增强则是从一个非常基础的、能够起作用的版本开始,并不断扩充,以适应未来环境的需要。