what is great about png is that it includes alpha channel, so the background of a png image may be cleared, thus making it transparent. But not all png image files have this transparent background, some of them still have a white background (that is part of the raster) and you cannot make it disappear (which is happening to you), or at least I don't know how to remove it, I'm pretty sure there is a way to do this on Photoshop or image editing programs. Look at these two images upload.wikimedia.org/wikipedia/c ... tion_2.png . While the first one seems to have a white background, it actually has a clear background ( you can drag the image around the screen and see that only the raster is going to be above anything, not any white background). The second one actually has a checkered background (when you drag it around the screen, you can see how it also drags the checkered background and it is part of the raster). The image I posted in my previous reply is a png with a clear background, so it will work nicely when added to your code, although it is resized automatically so it displays a little bit weird, but should be transparent and perfect for the shadow thing.
Hope this helps, I posted this with knowledge from a school project I did about 3 years ago and I haven't worked with graphics since then, so if anyone notices something wrong in what I am saying please correct me