Я не нашел способ сделать это, который не является хаком, но вот самый простой хак, который я мог придумать:
<script type="text/javascript">
function tweakWidthForScrollbar() {
var db = document.body;
var scrollBarWidth = db.scrollHeight > db.clientHeight ?
db.clientWidth - db.offsetWidth : 0;
db.style.paddingRight = scrollBarWidth + "px";
}
</script>
...
<body onresize="tweakWidthForScrollbar()">
Идея состоит в том, чтобы определить, находится ли вертикальная полоса прокрутки виспользуйте, и если это так, вычислите его ширину и выделите достаточно дополнительного отступа для него.