I am not an expert at CSS, but I have had problems with styles when there is a mixture of classes and ids involved in an HTML heirarchy. Is the DIV contained inside another HTML element? How are the containing elements styled?
PHP simply writes HTML for you, it has no control on how the HTML is interpreted. If there is a problem, it is with the generated HTML, not with the fact that PHP wrote it.
Use the View Source feature of the browser to check your HTML. Is the DIV shown there with the ID as it should be?
Check the validity of the HTML and the CSS (at W3C QA Toolbox
). Invalid markup can cause problems.
Also, make sure the link for the style sheet is correct; and that the urls in the stylesheet are correct. Using relative paths, can lead to problems if the HTML is in a different directory than the style sheet. Since you are using a relative path for the HREF, it is relative to the path of the HTML url. The image paths are also relative, but they will be relative to the CSS url. I highly recommend using absolute (url) paths for all of these.
If the problem persists, you might post the HTML (from View Source) showing the DIV and its containing elements, along with your CSS.
-- I haven't lost my mind, it's backed up on tape ... somewhere!