Gifs suck. PNGs (Portable Network Graphics) are much better – more colours, freedom from intellectual property rights, and (best of all) an alpha channel for transparency. Some good articles:
– PNG opacity (with some nice examples)
– Fuzzy Drop shadows (like on Google Maps)
– Choosing what image to serve in PHP on the server
Related: Opacity in CSS, being able to see through DIVS – CSS Transparency for IE, CSS Opacity