
Best Practices for Cross‑Browser Compatibility
Cross‑browser compatibility ensures a consistent user experience across different browsers. Best practices, CSS and JS techniques, and testing strategies.
Articles
When I started in web development (twenty‑three years ago), cross‑browser compatibility was a hot topic. Many days and hours were lost cursing Microsoft for interpreting the specs differently to other browsers, and a lot of money could be made if you were fluent in these issues. Nowadays, these issues tend to stem more from differing levels of compatibility with new JavaScript features (with iOS Safari being a prime suspect), rather than with CSS.
Below you will find a subset of articles from my blog specifically about Cross‑Browser Compatibility. This is an area I have worked with for many years, and it has been a regular subject in my writing. There are twenty‑five articles collected together for you below.

Cross‑browser compatibility ensures a consistent user experience across different browsers. Best practices, CSS and JS techniques, and testing strategies.

Integrating CMSes with HTML, CSS, and JavaScript enables dynamic, flexible content management. Here, I explore best practices, performance tips, and SEO.

Optimise HTML markup for SEO and accessibility with semantic elements, heading structure, alt text, clean code, anchor text, and crawler‑friendly structure.

Use feature detection in front‑end work by checking browser capability, choosing enhancement or fallback paths, and avoiding fragile user‑agent assumptions.

Write safer JavaScript for older browsers by checking support, avoiding fragile assumptions, containing failures, and keeping core interactions usable.

The JavaScript prototype chain underpins inheritance, enabling object property sharing. Here, I explore its workings, property searching, and quirks.
A bug in the WebKit engine that only affects website Retina screen devices means that setting a zero‑blur filter in CSS isn't as easy as it should be.