Neeraj's Blog

A blog on programming and web techniques.

Progressive Enhancement : Semantic HTML With External CSS and Unobtrusive Javascript

| Comments


The term “Progressive Enhancement” was coined by Steven Champeon, casually discussed in a series of articles he put up on Webmonkey, and formally presented in a SXSW conference in 2003.


Breaking down the term into two parts, the word Progressive means developing gradually or in stages, and the word Enhancement means an improvement that is more agreeable.

Now, in terms of website design, the term Progressive Enhancement means, creation of your website code in such a way as to start with a very basic version of it, so that it is in an agreeable state even for browsers with stifling limitations on functionality. And then externally/conditionally, keep imporving the presentation and functionality using techniques like feature detection.

More formally the term can be defined as

Progressive enhanvement is a strategy for web design that emphasis the use of accessibility, semantic HTML markup, external stylesheets and scripting technologies in a layered fashion that allows everyone to access the basic content and functionality of a web page to those which low end devices, while also providing enhanced versions of a page to those with more advanced browser software and better bandwidth.