stai facendo un po' di confusione
php è un linguaggio interpretato dal server
css è un linguaggio interpetato dal browser, cioè dal client.
l'uno non ha nulla a che vedere con l'altro
se impostando uno sfondo trasparente ad un div, il div è nero
probabilmente al di sotto del div c'è un qualche altro elemento con sfondo nero
nel dubbio posta il codice che riceve il browser (tasto desto > visualizza sorgente)