books

books

The concept of full-stack was pronounced dead at the close of 2019.
2020 Stack is the new name for the new generation. Follow ⚪⚪⚪

windrose

Browser layer

Front-end stack

The browser wars are over, long live the browser! Yes, browsers are responsible for rendering your website faithfully to your design, but just because each of the major browsers adhere to W3C and IETF standards doesn't mean that there aren't subtle differences in interpretation—differences that can make your web pages look dramatically different from one browser to the next.

When designing your next website, make sure you test every page against each of the most-used browser layout engines—Trident, Gecko, WebKit, and Presto—and pay particular attention to the very large differences in DOM/JavaScript implementations.

Browser Layout Engine Availability Penetration
Internet Explorer Trident Windows 65.5%
Firefox Gecko Windows, Mac, Linux 25.5%
Safari WebKit Mac, Windows 3.0%
Chrome WebKit Windows 2.5%
Opera Presto Windows, Mac, Linux 1.5%
Camino Gecko Mac *
OmniWeb WebKit Mac *
iCab WebKit Mac *
Konqueror WebKit Linux KDE *
Galeon Gecko Linux GNOME *
Epiphany Gecko Linux GNOME *
K-Meleon Gecko Windows *
Dillo FLTK2 Linux *
NetSurf NetSurf RISC OS, Linux, BeOS, Haiku, Amiga *
Amaya W3C testbed Linux, Windows, Mac, Amiga *
Lynx Lynx (text only) *

* All of these together have a market penetration of about 2.0%

Operating system, hardware, personal settings

On top of the minor browser implementation differences, there are significant differences in computer operating systems, computer hardware, and personal user settings. These differences are often overlooked by test routines that assume everyone is running on a similar platform with state-of-the-art hardware. Consider this:

Browser Penetration

On the front-end, the browser layer is where some of the toughest programming challenges occur. Test, test, and test again. Make sure your design is rendered faithfully and that your visitors are seeing what you intended.