Browser Compliance
The term Browser Compliance may be the ultimate oxymoron. A good website should be designed to the appropriate standards, not to the particular and peculiar idiosyncrasies of any individual browser. The browser vendors, unfortunately, have their own directives, which generally involve getting a product to market quickly, rather than completely. As such, website designers are left with an exponentially growing problem of designing for everybody. This usually leads to inadequate design resources or just plain ignorance--it is sometimes difficult to even realize that there's a compatibility issue given the combination of platforms, browsers, and browser versions available. Alas, the user community is left to suffer the consequences. The problem is only exacerbated as new standards emerge in this nascent industry.
Here's a glimpse into the problem. Webreview has a good compatibility chart for CSS Level 1 and CSS Level 2 that shows many browsers and what they support. They also have an implementation chart that identifies which browsers have which features (including, for example, what version of JavaScript is implemented in each browser). Netmechanic also has a compatibility tutorial that provides a wealth of information on compatibility issues.
Just from my own quick search, I turned up these browser releases going back just a couple years:
Operating System Compliance
The above discussion neglected to mention an important factor: operating system. You probably assumed the discussion was just on Windows. Let's not forget Linux, Unix, and Macintosh. TBD...
One could pull one's hair out thinking about the magnitude of this problem. Pragmatically speaking, however, it is a lot more manageable, but you should be sure to make conscious trade-offs. Take a look at browser usage statistics, such as TBD. You'll find that, on Windows, Internet Explorer has over 90 percent of the market; next would be Netscape with a couple percent, and dramatically decreasing from there. So you could knock out quite a few from contention there.
You might also consider that older browser versions are used less and less as time goes by, so you might consider, for example, supporting only the latest two, perhaps three, major version numbers of the browsers you choose to support. This has another distinct advantage. As new standards and technologies emerge for the web, it becomes quite burdensome to support older browsers which do not support these new standards. An example would be the Document Object Model (DOM) which is supported by IE, Netscape, Opera, Mozilla, and others nowadays, a vital tool for manipulating web pages. But this is not supported in IE 4, for example.
Screen size or, more precisely, screen resolution, can also be an important consideration in your website design. There are plenty of people who still use 13-inch monitors with resolutions of 640 pixels by 480 pixels. But ironically, those are not the problem. For those low-resolution monitors, the worst case is a user will have to scroll back and forth, and up and down. A lot. But they will be able to see the page. It is actually the latest whiz-bang monitors with 1600 x 1200 or better resolution where some fonts may be so small as to be completely unreadable. If you design correctly, however, a knowledgeable user can adjust the font size from the View menu of Internet Explorer. But if you design poorly, that menu item won't do anything.
Here's a handy chart for checking what your maximum resolution could be on your monitor. Then you can right-click on your desktop, select Properties, and then Settings to see what your monitor is actually set for, or to change it. For testing purposes, it would be cumbersome to flip back and forth between resolutions in this fashion for each page, so instead run through your whole site for a given resolution, then change it, and run through the whole site again. This type of testing will give you a true measure of how small your characters will get. Alternately (or in addition), you can add browser buttons to change your window size with a single click, which will allow you to evaluate how much scrolling back and forth a user will need to do to see your page. Here are buttons for common sizes: SVGA SXGA VGA XGA