Here's a little tip I've just discovered, although it's so simple I'm sure others must be using it. As we all know, IE6 isn't CSS 2 compliant; one feature not supported is the use of selectors. This stops us, for example, from this sort of thing:

input[type="text"] {border:1px solid #000;}

This would mean that only text entry input fields have a black border, while all other entry fields, such as check boxes, remain borderless. A simple way around this problem is to define CSS classes for the style you require and  use a theme to set the classes; within the theme you can place the following:

<asp:TextBox runat="server" CSSClass="txtBox"/>
<asp:Button runat="server" CssClass="button" />

Then set the default StyleSheetTheme in the config:

<pages StyleSheetTheme="Default" />

Now all textboxes have the set style and not all input fields. As this is a stylesheet theme it can also be overridden on the control itself.

I'd always considered themes for switching between UIs, but this allows you to use them to get around some browser issues.