Concept: What is Progressive Enhancement?
The term progressive enhancement gets bandied around a fair bit these days.. but what does it really mean? Lots of people seem confused, misled or misguided as to its significance... so I'm going to attempt to clarify the idea.
The idea behind progressive enhancement is that we add extra functionality to our page progressively.
But what's it really mean?
Practically, in web development, we try to use Javascript to apply progressive enhancements to a page. However the secret to successfully using these techniques is to make sure that you are not adding *necessary or required functionality* to the page using a technology or technique that is not accessible to everyone.
Right.. so gimme an example..
To provide a concrete example of how we might progressively enhance a page, suppose we want to create an accordian menu. We mark up the content using a Definition List (DL) and then we could use CSS to hide the DD blocks. Following this, we use JavaScript to show the DD on mouseover. The issue with this is that the DD is already hidden and then if Javascript is not available the DD content is never displayed.
Instead, we can choose to USE the same JavaScript to hide the DD content as the page loads, thus if the user does not have javascript they will see the fully expanded content.
Hopefully that helps people to actually understand what progressive enhancement really is... instead of just using it like another buzz-word.




Post a Comment
Reader Comments