Looks to me like some of these properties - top, left - are CSS2 only and browser coverage of CSS2 is still very patchy. Until such time as all browsers get their act together as regards CSS2, I'd stick rigidly to CSS1. See http://www.w3.org for full listings. You can probably do all the things you want to do with CSS1. What you've got in your example is certainly available in CSS1, but the property names are a little more long-winded, e.g.:
margin-top
border-right-width
margin-left
(cf. http://www.w3.org/TR/REC-CSS1-961217.html)
For some test results of CSS2 with popular browsers, try http://www.people.fas.harvard.edu/~dbaron/css/test/results
Finally, opinions vary about using fixed or relative size specifications. If you test your CSS on a Mac browser, you'll find that pixels come in all sizes. There's an excellent article by Tim Perdue on this site about using PHP to automatically generate browser-specific CSS, covering IE/Netscape/Opera etc. on Mac and PC. The full source code is there for the taking:
http://www.phpbuilder.com/columns/tim20000821.php3
Best of luck
Norman