Explain graceful degradation and progressive enhancement

1 Overview

The two concepts of progressive enhancement and graceful degradation became popular after the advent of CSS3. Because low-level browsers do not support CSS3, but CSS3 special effects are too good to give up, so use CSS3 in high-level browsers, and only guarantee the most basic functions in low-level browsers. The purpose of both is to focus on different experiences under different browsers, but their focus is different, which leads to different workflows.

2 Detailed explanation

2.1 Progressive Enhancement

From the beginning, build pages for low-version browsers to complete basic functions, and then perform effects, interactions, and additional functions for advanced browsers to achieve a better experience.

2.2 Graceful Degradation

Build the full functionality of the site from the beginning, then test and fix it for the browser. For example, at the beginning, an application was built using the features of CSS3, and then gradually hacked against major browsers so that it can be browsed normally on lower version browsers.

In fact, gradual enhancement and graceful degradation are not new concepts, but the old concepts are replaced by a new one. In traditional software development, the concepts of upward compatibility and downward compatibility are often mentioned .
Progressive enhancement is equivalent to upward compatibility, and graceful degradation is equivalent to downward compatibility.

3 Brief analysis

The two are not good or bad, but the development concept is different!

The view of graceful degradation believes that websites should be designed for the most advanced and complete browsers. The testing work under browsers that are considered "outdated" or lacking in functionality is arranged in the final stage of the development cycle, and the test object is limited to the previous version of mainstream browsers (such as IE, Mozilla, etc.). Under this design paradigm, older browsers are considered to only provide a "poor, but passable" browsing experience. You can make some small adjustments to suit a particular browser. But since they are not the focus of our attention, apart from fixing larger bugs, other differences will be directly ignored.

The progressive enhancement view believes that the focus should be on the content itself. Please note the difference: I didn't even mention the word "browser". Content is the incentive for us to build a website. Some websites display it, some collect it, some seek, some operate, and some websites even include all of the above, but the same thing is that they all involve content. This makes progressive enhancement a more reasonable design paradigm

Guess you like

Origin blog.csdn.net/qq_41800366/article/details/102458967