Instead of using the CSS opacity rule (which also affects child elements). Make yourself a 1px PNG file. and set it as the background for the container. To fix IE6's PNG issue, you can use either of these hacks:
jquery.pngFix.js - PNG transparency for Windows IE 5.5 & 6 (IE PNG Fix)
IE PNG Fix - TwinHelix
I'd advise the jQuery fix as it's more reliable for tiling backgrounds.
There are a couple of ways to center a div. Easiest is to stick a <center> tag below your body tag, then in the css, tell the div to align all text to the left. Another way would be to put the div in a 100% wide container, set the positioning to absolute and use a negative margin, half the width of the div you want to float, like so:
Center Absolute Position DIV | marketing . web . design