Web Browser Support for HTML5 - dummies

By Andy Harris

If you’re writing HTML5 code, you need to view your web pages in a web browser that interprets HTML5 correctly. The problem is that HTML5 isn’t just one specification but a number of different standards, and various browsers offer differing versions of support.

Most browsers are based on a smaller set of tools called rendering engines. It’s the rendering engine that really supports features or not. The primary engines, the browsers that use them, and how well they support HTML5 are

  • Gecko (Firefox): The Gecko engine is the main engine of Firefox, Mozilla, and a number of related browsers. It has support for many (but not all) HTML5 features. Although Firefox is a well-known and respected browser in the web development community, it does not (yet) have extremely good support for HTML5.

  • Trident (Internet Explorer): The various forms of Internet Explorer (IE) all use the Trident engine. So far, this engine has the weakest support of HTML5 features among all the major browsers. IE9 promises to have much more complete support for HTML5, but even this version is projected to be missing some key features, including advanced form element support and geolocation.

  • WebKit: The WebKit engine was originally created by Apple based on code from the open source KHTML project. Apple then released the code as open source, where it became the foundation of a number of browsers. The Safari browser on Macs, iPhones, and iPads all use the WebKit engine. WebKit is also the foundation of the Google Chrome browser and the browser on the Android mobile platform.

    WebKit has become the standard rendering engine for mobile platforms. If you want to see how your pages will look on mobile platforms, check with a WebKit-based browser like Chrome or Safari. WebKit has the widest support for HTML5 elements, although it still doesn’t support everything.

  • Presto: Presto is the engine underlying the Opera family of browsers. Opera has long been considered a technically superior browser, but that regard hasn’t translated into market share.

Browser specifications change — that’s the nature of the beast. Always test your page in as many browsers as you can, so you won’t be surprised. You can also check Wikipedia’s Comparison of layout engines (HTML5) which tends to have the latest information on what features of HTML are supported by which browser.