I do not know a way to use different class names for different browser nor does it seem neccessary except for IE and it is possible to have different style rules for IE and even different versions of IE.
My advice is always do the designing in a standards compliant browser, never design using IE. After you design in standards compliant browsers you will find it looks good generally in Firefox, Chrome, Safari, Opera which are pretty standards compliant. Then if you try IE and it doesn't look right you can fix it in IE by altering the style rules as needed but only for IE by using the IE comment system that lets you include additional CSS files in IE like this:
<!--[if lt IE 7]>
<link rel="stylesheet" href="http://www.mojoportal.com/Data/Sites/1/skins/mojosite-brightside/IESpecific.css" type="text/css" id="IEMenuCSS" />
<![endif]-->
<!--[if IE 7]>
<link rel="stylesheet" href="http://www.mojoportal.com/Data/Sites/1/skins/mojosite-brightside/IE7Specific.css" type="text/css" id="IE7MenuCSS" />
<![endif]-->
so this way I have the ISpecific.css for IE 6 and IE7Specific.css for IE 7 and I can fix what I need to in IE using these files. Other browsers ignore this stuff.
but if you design uisng IE you end up with IE specific style in the main css and its impossible to fix it in the other browsers.
Hope it helps,
Joe