Websites that Work for Everyone

Author: Shawn Maust

When building a website, there are various approaches you can take. One approach is to target visitors on newer browsers, utilizing techniques that these new browsers support, without worrying about older browsers. Another approach is to only use techniques that work across all browsers, thus refusing to implement anything that isn’t universally supported. 

Another approach, and one that we employ, is called progressive enhancement. Progressive enhancement focuses on first making sure a web page is accessible and functional for all visitors, regardless of the browser. Even if JavaScript and CSS are absent, a progressively enhanced page should still render. The links and forms should still work. Content should still be accessible. The experience may not be beautiful, but it should at least be functional. Then, once the base content and functionality are in place, we can add extra layers. We can add in additional styling (CSS) and functionality (JavaScript) that newer browsers support, but that aren’t strictly “necessary” for the page to work.

The upside to this is that the page will be accessible and functional to everyone, AND those who are on newer browsers will have an enhanced experience. But the enhanced experience will not come at the expense of other visitors. The only downside to this approach is that it does take a little forethought to make sure the page is set up to work if the extra layers aren’t in place. But that little bit of planning pales in comparison to the importance of being able to provide an accessible, usable site to all our visitors, regardless of what browser they may, or may not, be using.