第9天 简述下你理解的优雅降级和渐进增强
Activity
tiyunchen commentedon Jun 1, 2019
https://segmentfault.com/a/1190000013818745
现在项目没有考虑过这个问题,都是一套css
poporeki commentedon Jul 4, 2019
优雅降级,先做好一个完善的具备完整体验的版本,再向下做兼容。
渐进增强,先做好一个可以基本正常使用的版本,再慢慢丰富体验和内容。
Konata9 commentedon Jul 24, 2019
总结了一下前面老哥的回答。
渐进增强和优雅降级这两个概念是在 CSS3 出现之后火起来的。由于低级浏览器不支持 CSS3,但是 CSS3 特效太优秀不忍放弃,所以在高级浏览器中使用 CSS3,而在低级浏览器只保证最基本的功能。
优雅降级
先不考虑兼容,优先最新版本浏览器效果,之后再逐渐兼容低版本浏览器。
渐进增强
考虑兼容,以较低(多)浏览器效果为主,之后再逐渐增加对新版本浏览器的支持,以内容为主。也是多数公司所采用的方法。
参考文章:前端面试题-渐进增强和优雅降级
yyz841875845 commentedon Dec 23, 2019
只用最新chrome ,完结。
PullAndRun commentedon Feb 6, 2020
优雅不起来。引导用户下载chrome。
猴子猩猩原始人才用IE
linzowo commentedon Mar 23, 2020
我个人的观点是。不管是哪种都需要先有一个结实的基本html框架才行。字面上说优雅降级和渐进增强都是先开发一个最高或最低版本,然后按需增加适应。但是如果在前期没有搭好一个健壮的框架,那后面有一些功能实现上,难免可能会修改html结构,这就导致前面写好的内容可能要被推翻重做。
blueRoach commentedon May 26, 2020
优雅降级:在编写项目时,直接针对最高级、最稳定的版本进行开发。然后在后续对低版本进行兼容。
渐进增强:在编写项目时,针对自己想个兼容的最低版本进行开发。然后在后续对高版本的新特性开发,或者更好的体验
giggleCYT commentedon Jun 3, 2020
渐进增强(Progressive Enhancement):一开始就针对低版本浏览器进行构建页面,完成基本的功能,然后再针对高级浏览器进行效果、交互、追加功能达到更好的体验。
优雅降级(Graceful Degradation):一开始就构建站点的完整功能,然后针对浏览器测试和修复。比如一开始使用 CSS3 的特性构建了一个应用,然后逐步针对各大浏览器进行 hack 使其可以在低版本浏览器上正常浏览。
在传统软件开发中,经常会提到向上兼容和向下兼容的概念。渐进增强相当于向上兼容,而优雅降级相当于向下兼容
smile-2008 commentedon Sep 3, 2020
优雅降级
先不考虑兼容,优先最新版本浏览器效果,之后再逐渐兼容低版本浏览器。
渐进增强
考虑兼容,以较低(多)浏览器效果为主,之后再逐渐增加对新版本浏览器的支持,以内容为主。也是多数公司所采用的方法。
GodEnd commentedon Mar 21, 2021
优雅降级是先写一套兼容最新的浏览器的方案,再向之前的浏览器做兼容。
渐进增强是先从之前低级的版本的浏览器做一套功能最简单的方案,再逐步向上兼容,增强功能。
pangyutong commentedon Mar 22, 2021
Math.floor Math.ceil
你品 你细品
xiezhenghua123 commentedon Apr 11, 2021
优雅降级:先考虑最新浏览器,然后再向下考虑兼容的问题
线性增强:先考虑最坏的兼容情况,然后添加新浏览器特性
amikly commentedon Oct 27, 2021
优雅降级(graceful degradation)
一开始就构建站点的完整功能,然后再针对低版本浏览器进行兼容
比如一开始使用 CSS3 的特性构建了一个应用,然后逐步针对各大浏览器进行 hack 使其可以在低版本浏览器上正常浏览
优雅降级的写法,优先考虑新版本浏览器的可用性,最后才考虑老版本的可用性
而在现在前缀CSS3和正常CSS3都可用的情况下,前缀CSS3会覆盖正常的CSS3
渐进增强(Progressive Enhancement)
一开始就针对低版本浏览器进行构建页面,保证最基本的功能,然后再针对高级浏览器进行效果、交互、追加功能达到更好的体验
渐进增强的写法,优先考虑老版本浏览器的可用性,最后才考虑新版本的可用性
在现在前缀CSS3和正常CSS3都可用的情况下,正常CSS3会覆盖前缀CSS3
总结
优雅降级是从复杂的现状开始,并试图减少用户体验的供给
而渐进增强则是从一个非常基础的、能够起作用的版本开始,并不断扩充,以适应未来环境的需要
选择
若低版本用户居多,则优先采用渐进增强的开发流程
若高版本用户居多,则为了提高大多数用户的使用体验,那当然优先采用优雅降级的开发流程
业务优先,提升用户体验永远不会排在最前面
最重要的还是保证尽可能多的用户可以正常访问网站,在此之后再考虑降级的极端情形和现代浏览器的体验增强
6 remaining items