Fortunately, there was a simple solution: I added overflow:scroll to the body CSS element.
This will cause the scrollbar to always appear (if the page is wide enough), regardless of whether the page is long enough to actually need it. While this is annoying, it’s better than having the menus move around between pages.
This doesn’t work in IE6, so I added _overflow:auto after overflow:scroll. Yurigoul suggests an alternative in the comments below: body {height: 100%} html {height: 100%; margin-bottom: 1px;}