Bah. Today I have conclusive proof that IE is a big pile of steaming horse crap. Been working on this website and in all CSS capable browsers the menu bit remains stationary on the left hand side and the main body of the content scrolls up and down on the right.
In IE it doesn't keep the menu stationary, but that's not really much of a problem. What is a problem is IE putting the content below the menu. Since the menu is the height of the window, it looks like there isn't any content. That's easily fixed having looked around on the net. IE treats floating DIVs different to every other browser out there and assumes by default that the DIVs are block level content. All other browsers pay no attention to whether the content is block level or inline. The solution is to make the DIVs inline and then it puts them in the right place.
Or not. For reasons that have completely baffled me, it was working some of the time. I had thought it was due to having tables of width 100%, so made them not have a forced width, but still some pages were still broken. It's only today that someone else noticed that it's due to the width of the content. If the width is too big to display, IE moves it down below the menu. Which is stupid. I could understand it if it moved it below the menu where there was enough space, but it only moves it vertically. So the page is still wider than the window.
There's only so much bending over backwards to support broken software that I'm willing to do. My solution to this bug is to install a better browser :)