You are correct, display:none can’t be overridden on child elements if it is set on a parent element. I always assumed the same was true of visibility:hidden until I read your last post.
One option might be to set the height and width of the parent elements you want to hide to zero (as well as using the visibility:hidden trick). As long as overflow:visible is set, the child #container element should still show. You might find using absolute or relative positioning helps here too. But I would need to have a look at your site to advise more specifically. So please feel free to share it.