我对渐进增强和优雅降级之间的区别感到困惑。在我看来,它们似乎是一回事。
您能否向我解释两者之间的区别以及在哪种情况下我会使用其中一种?
我对渐进增强和优雅降级之间的区别感到困惑。在我看来,它们似乎是一回事。
您能否向我解释两者之间的区别以及在哪种情况下我会使用其中一种?
它们几乎完全相同,但上下文不同。
有一类浏览器称为“A 级浏览器”。这些是您的典型受众成员,(可能)构成了您的大多数访问者。您将从这些用户的基线开始。称之为最佳现代实践。
如果你想增强任何碰巧使用 Firefox 3.6 或 Safari 4 或其他一些 whizbang 开发者夜间 WebKit 的人的体验,你会想要做一些很棒的事情,比如
这些使您的网站看起来很酷,但不会破坏它。这是渐进增强。从最佳实践的角度拥抱未来。
另一方面,您的利基任天堂网站吸引了相当数量的Internet Explorer 5用户。可怜的你,但你也想确保他们不断回来。您可以通过将 Ajax 脚本包含在外部文件中来提供 Ajax 行为的替代方法,如果未打开其 JavaScript,则您的链接可能会更新整个页面。等等。从最佳现代实践的角度来看,您要确保某些历史市场正在被某种功能性网站所满足。这是优雅的退化。
它们大部分是相同的,但对于许多开发团队来说,它们的优先级不同:如果有时间,渐进式增强非常好,但通常需要优雅的降级。
如果您的网站在所有浏览器上看起来都一样好,但某些浏览器得到了,比如说,跳舞小马,因为它们支持跳舞小马,那么这就是渐进增强。它适用于所有浏览器,但某些浏览器可以获得额外的东西。通常,该术语适用于某些 JavaScript 功能,这些功能可能会增强“原始 HTML”之外的可用性。
如果您的站点仅在完全支持 CSS 3 和 Internet Explorer 8 的浏览器上看起来像您想要的那样 - 将显示相同的页面而没有圆角,那么这就是优雅的降级。该站点确实适用于最先进的浏览器,但它仍然可以在旧浏览器中使用,只是没有那么花哨。
最后,从两个不同的角度来看,它们实际上是同一件事。
每个概念的选定基线的方向是不同的。
优雅降级从理想的用户体验级别开始,并根据用户代理功能降低到最低级别,以迎合不支持基线使用的某些功能的代理。
渐进式增强从广泛的最低用户体验开始,并根据用户代理功能增加到更强大的水平,以满足支持比基线更高级功能的代理。
我认为如果时间/预算允许,可以同时使用这两种概念。如果不是,那么优雅的降级将是首选。
尽管我在某种程度上同意 Alex Mcp 和 deceze,但“优雅退化”和“渐进增强”这两个术语的含义与我的立场略有不同。
很多时候(在我看来),优雅的降级似乎更像是在我的经验中首先构建糟糕的应用程序之后才能将其击败提交。就像有人构建了一个巨大的 JavaScript 对象,为用户提供了一些非常酷的东西来玩,直到经理出现,测试了这个东西,每个人都尖叫着四处张开,当他们注意到他们的应用程序不起作用时在 35% 的浏览器中。“最好有人为此提供后备。”
不过,渐进式增强(这也是一个更好的术语)在我看来更多是关于通过最基本的可用方法在任何地方构建可以正常工作的东西,以提供用户所需的所有功能需要。然后可以通过简洁的小而不显眼的帮助程序、样式等添加它,这些实际上增强了相关应用程序的用户体验,而不仅仅是让它几乎不可用。“这看起来很酷。它可以在Internet Explorer 6中使用吗?哦,是的。可以。”
我认为也许在前两个答案中将样式作为两个术语的示例忽略了渐进增强通常通过其本质解决的真正潜在的可用性问题,在出现问题之前,优雅的降级会被忽略。
吐槽...
优雅降级是计算机、机器、电子系统或网络即使在大部分已被破坏或无法运行时也能保持有限功能的能力。优雅降级的目的是防止灾难性故障。
优雅降级是一种解决方案。这是构建网站或应用程序的实践,因此它在现代浏览器中提供了良好的用户体验。但是,对于那些使用旧浏览器的人来说,它会优雅地降级。该系统可能不那么令人愉快或漂亮,但基本功能将适用于旧系统。
一个简单的例子是使用 24 位 alpha 透明 PNG 图像。这些图像可以毫无问题地显示在现代浏览器上。Internet Explorer 5.5 和 Internet Explorer 6 会显示图像,但透明效果会失败(如果需要,可以使其工作)。不支持 PNG 的旧版浏览器会显示 alt 文本或空白区域。
采用优雅降级的开发人员通常会指定他们的浏览器支持级别,例如 1 级浏览器(最佳体验)和 2 级浏览器(降级体验)。
渐进增强是一种网页设计策略,它强调可访问性、语义 HTML 标记以及外部样式表和脚本技术。渐进增强以分层方式使用 Web 技术,允许每个人使用任何浏览器或 Internet 连接访问网页的基本内容和功能,同时还为那些拥有更高级浏览器软件或更大带宽的人提供页面的增强版本.
渐进增强与优雅降级的概念相似,但相反。网站或应用程序将为大多数浏览器建立基本级别的用户体验。当浏览器支持时,将添加更高级的功能。
渐进式增强不需要我们选择支持的浏览器或恢复到基于表格的布局。我们选择技术水平;即浏览器必须支持 HTML 4.01 和标准页面请求/响应。
回到我们的图像示例,我们可能会决定我们的应用程序应该在所有图形浏览器中都能正常工作。我们可以默认使用质量较低的 GIF 图像,但在浏览器支持时将其替换为 24 位 PNG。
资料来源:SitePoint 博客
我发现它往往是态度 - 你是说“好吧,我的网站与Lynx合作,用户可以做我希望他们能够做的一切,现在让我们添加一些华丽”,或者你是说“好吧,我的网站工作在 Firefox 中,现在让我们尝试为那些不愿意使用它/关闭 JavaScript 等的人修复它。”
为了更容易,只需将您的栏设置在顶部,然后您可以忽略渐进增强。当一个新功能出现时,提高你的标准;)
或者,将您的标准设置为最低级别(也许是Lynx?),然后使用渐进增强。