原文:Progressive Enhancement and Graceful Degradation: an Overview 链接:https://www.sitepoint.com/progressive-enhancement-graceful-degradation-basics/ 翻译:Robin

在本文中,我将讨论渐进增强和优雅降级——两个众所周知的概念但是可能有一点被误解。

不断演化的Web

Web 在不断的变迁,并且演化的速度惊人。科技和技术在不断的更迭。今天的 Safari 4 可能就是明天的 IE6。我们想用最时新的技术带给用户最好的体验。

不幸的是,强制浏览器升级没门。公司和个人不会因为开发者的要求而去改变他们的工作环境。许多人浏览网页完全不理会底层的技术和正当的更新理由。OS 和浏览器厂商对这些人可能还能起到有一些作用,但是 web 开发者只能吹捧新的浏览器的好处。

许多开发者争论说支持过时的技术没有意义。然而,这显然不能说服那些想要更多受众或获取使用旧浏览器用户的客户。这些用户可能没有系统权限、资金来源或技术能力去升级。还有用户可能使用的是一些不能去升级的专业辅助技术。没人能强制用户进行软件升级:这样做会和民主选择权对立起来。如果有人在你的 PC 上强制安装软件并声称是为你好,你会作何感想?

Web 的初衷是方便的在任何地方任何设备上使用。我们都知道终端用户的浏览应用是用互联网协议收发数据。我们不能猜测他们的程序或技术能力。

这使得 Web 开发环境十分恶劣。当用户使用8年前的浏览器或者禁用 Javascript 和插件去访问我们开发的应用时,我们的应用将会变的脆弱。

无障碍需求

无障碍是一个重要问题,并且会带着政治正确、提示标签、盲人用户的这样的观点。不仅如此。无障碍需要为所有人提供支持,不论他们使用何种浏览技术。

一个网站会运行在无数种类的设备上,屏幕阅读器、PDA、手机和游戏机,并且访问速度不尽一致。

优雅降级

优雅降级是一种解决方案。一种构建网站或应用的实践,在现代浏览器中去提升用户体验。然而,它会为使用旧浏览器的用户进行优雅的降级。系统体验可能不尽如人意,但是在旧系统上保证了基本功能可用。

简单的例子就是 24 位 alpha-transparent PNG 的使用。在现代浏览器上显示没有问题。IE5.5 和 IE6 也会显示图片,但是透明度会失效(如果有必要当然也行)。不支持 PNG 的旧浏览器会显示提示文字或者空格。

开发者通常采取优雅降级去指明浏览器支持的等级,即一级浏览器(最好的体验)和二级浏览器(降级体验)。

渐进增强

渐进增强类似优雅降级的概念,但是有点相反。网站或应用会为了多数浏览器确立一个基本的用户体验级别。多数的高级功能会随着浏览器的支持程度去增加。

渐进增强不会要求我们选择支持的浏览器或者回归到基于表格的布局。我们选择一个技术级别,即浏览器必须支持 HTML 4.01 和标准的页面请求/响应。

回到我们图片的例子,我们可能决定所有的图形浏览器都必须功能可用。我们会默认的设置一个低质量的GIF图片,并在浏览器支持的情况去使用 24 位 PNG 图片。

查看下一篇文章:渐进增强和优雅降级:抉择

相关阅读: