Browsercompatibiliteit is de mate waarin een website zich hetzelfde gedraagt in verschillende browsers en op verschillende apparaten. Een pagina die in Chrome perfect rendert, kan in Safari zijn layout verschuiven of in Firefox een animatie verliezen. Goede compatibiliteit betekent dat elke bezoeker een werkende, consistente ervaring krijgt, ongeacht waarin hij de site opent.

De reden dat dit überhaupt een probleem is, ligt bij de engines. Google Chrome draait op Blink, Safari op WebKit en Firefox op Gecko. Zie het als drie koks die hetzelfde recept volgen maar met net iets andere ovens. Het gerecht is in elke keuken herkenbaar, maar de timing en de afwerking verschillen. Dus een CSS-functie kan in de ene browser volledig werken, in de andere half, en in een derde ontbreken, vooral op oudere versies.

De praktische oplossing is testen en nette terugvalopties. Je controleert de browsers die je bezoekers echt gebruiken en dicht daarna de gaten. Voor een functie die niet wordt ondersteund kun je met een kleine polyfill de ontbrekende mogelijkheid invullen, zodat een oudere browser zich toch netjes gedraagt. Het doel is niet overal pixel-identiek, maar overal betrouwbaar bruikbaar. Je statistieken vertellen je welke browsers ertoe doen: bezoekt vrijwel niemand je in een oude versie van Edge, dan verspil je daar geen dag aan een bug. En de prijs van dit werk overslaan is concreet. Een datumkiezer die stilletjes faalt in Safari, een betaalknop die niets doet in een oudere browser, een layout die op één telefoon over elkaar valt, elk daarvan is een klant die vertrekt en een verkoop die je nooit ziet.

Bij TopDevs testen we voor de lancering op de grote browsers op echte apparaten, zodat een klant nooit via een geïrriteerde bezoeker hoort over een bug in Safari.