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)