Web designers must realize that browsers are different and that web pages look different in different systems. Don't tell the user to download a particular browser or plug-in. It is OK to use advanced modern technologies, but make sure there is an alternative for users who don't have this technology or have disabled it for whatever reason.
An advanced web site should be tested in many different environments, which may include:
- A slow connection.
- Standards-compliant browsers (e.g. latest versions of Firefox and Opera).
- Browsers with non-standard DOM models (Explorer).
- Devices without support for style sheets (Lynx, robots).
- Different screen resolutions and numbers of colors.
- Different operating systems (Windows, Mac, Linux, Solaris, various smartphone systems).
- Different security settings (e.g. cookies and Java turned off).
- Small portable devices.
- Aural and tactile devices for blind people, if applicable.
- Alternative pointing devices (other than a mouse).
- Printing on monochrome and color printers if the page contains text that users might want to print out.
In some cases it may be necessary to add a browser-sniffer that detects the user's browser and provides a code that is suitable for that particular browser, but this should be a last resort because it cannot take future browsers into account.
It is a problem to test web pages in different versions of Internet Explorer because this browser is so deeply integrated into the Windows operating system that each Windows installation can only have one version of Explorer installed, and it may be impossible to downgrade it. You may need a virtual machine for each version of Explorer.