Future-oriented all-round web design: progressive enhancement

Future-oriented all-round web design: progressive enhancement
<br />Original: Understanding Progressive Enhancement
By Aaron Gustafson
Translation: http://lifesinger.org/

Since 1994, the web development community has been beating the drum of graceful degradation. The concept comes from the engineering world, and its core idea is to give the latest and most powerful browsers a full-featured experience, while leaving only the basic leftovers for those poor people who are unfortunate enough to still use Netscape 4. There is no doubt that this played a role. But it doesn't quite fit in with Tim Berners-Lee's original vision of a Universally Accessible Web.
About 10 years later, some smart people started questioning graceful degradation and found it to be inadequate on many levels. By focusing their efforts on content availability, overall accessibility, and the capabilities of mobile device browsers, they found a new approach to web development - one that puts content at the center of attention rather than just paying lip service to support for older devices.
At the 2003 SXSW conference, Steve Champeon and Nick Finck gave a talk called "Full-scale Web Design for the Future". In doing so, they revealed the blueprint for this new approach to Web development. Steve also gave it a name: Progressive Enhancement.
There’s a (subtle) difference here <br />If you’re scratching your head trying to figure out the difference between graceful degradation and progressive enhancement, it’s a matter of perspective. Both graceful degradation and progressive enhancement consider how well a web page works on a variety of browsers on a variety of devices. The key difference between the two lies in their respective focus and the impact of this focus on workflow.
A graceful degradation perspective <br />Graceful degradation focuses on building sites for the most advanced/capable browsers. Testing in browsers that are considered "old" or less capable is often delayed until the very end of the development cycle, and is usually limited to the last released version of the major browsers (IE, Mozzila, etc.).
In this mode, older browsers can only provide a poor, but passable experience. There may be some small patches to suit a specific browser, but these browsers are not the focus after all, and apart from fixing major bugs, no further efforts will be made.
The perspective of progressive enhancement <br />Progressive enhancement focuses on content. Note the difference: I didn’t even mention browsers.
Content is why we created websites in the first place. Some sites distribute content, some collect content, some request content, some manipulate content, and some do all of the above, yet they all need content. This is where incremental growth becomes a more appropriate model. That's why Yahoo! quickly adopted this model and used it to create the Graded Browser Support strategy.
Previous Page 1 2 Next Page Read Full Article

<<:  MySQL foreign key setting method example

>>:  Use of kubernetes YAML files

Recommend

Several ways to solve the 1px border problem on mobile devices (5 methods)

This article introduces 5 ways to solve the 1px b...

Detailed explanation of MySQL database Event scheduled execution tasks

1. Background As the project's business conti...

Implementation example of video player based on Vue

When the existing video player cannot meet the ne...

Example of using store in vue3 to record scroll position

Table of contents Overall Effect Listen for conta...

A simple way to implement all functions of shopping cart in Vue

The main functions are as follows: Add product in...

How to assign a public IP address to an instance in Linux

describe When calling this interface, you need to...

Example of viewing and modifying MySQL transaction isolation level

Check the transaction isolation level In MySQL, y...

How to install FastDFS in Docker

Pull the image docker pull season/fastdfs:1.2 Sta...

Use of align-content in flex layout line break space

1. The effect diagram implemented in this article...

How to modify the MySQL character set

1. Check the character set of MySQL show variable...

Tips and precautions for using MySQL index

1. The role of index In general application syste...

HTML head tag detailed introduction

There are many tags and elements in the HTML head ...

Mysql implements three functions for field splicing

When exporting data to operations, it is inevitab...

Detailed explanation of overflow:auto usage

Before starting the main text, I will introduce s...