Why is browser compatibility such a challenge?
There are literally hundreds of browsers out, each with dozens and in some cases hundreds
of different versions, running on dozens of operating systems. This amounts to over 15,000
combinations of unique browsers, making identification and knowing which browsers support what extremely challenging. If only you knew what browser the visitor is using and what its capabilities are, you could easily return different HTML, JavaScript, style sheets, DHTML,
or XML as required to achieve a common (or a gracefully degraded for less capable
browsers) experience.