I'm having trouble getting the getElementById() command working properly, I've tested in various browsers and looked around to see if I can find the issue elsewhere and compared my code with others and I can't see a reason why it wouldn't work...
Here's the code in my header:
document.getElementByID(x).style.display = 'block';
document.getElementByID(y).style.display = 'none';
No. All the browsers play well with the display block. But not all the elements, according to the standards, may have the display "block". For instance tables and table elements. They have specific "positive" display, but not "block":
Well, not for IE < 9. IE uses "block" and not the standard table display. Therefor, but only in this case (table and table elements) it is valuable what you have said: the empty value "" is cross browser, while "block" it is not