DOJO seems to have some quirks here. I specifically need to have the TabContainer hidden when the page loads, but then become visible after the user clicks a button. The fir
If you use dijit.byId("tabContainer").resize(); after you set the display to block it will bring back the tab headers.
You'll save a little bit of javascript if you just use visibility: hidden; (although the tabContainer will still take up space on the page)
Another alternative I use pretty frequently is instead of display: none/block; I use height: 0px/auto;
You could also switch the position to absolute and set the coordinates for off screen somewhere too. That's require a lot more css changes than simply doing the height though. That's my preferred method if it works in my situation.
Between these solutions hopefully one will work for you.