Правильный ответ с помощью CSS position:fixed;
.
Однако имейте в виду, что IE6 не поддерживает position:fixed;
. Это может не иметь значения для вас (немногие оставшиеся пользователи IE6 привыкли к сайтам, которые сейчас ломаются).
Что еще более важно, многие мобильные браузеры также не поддерживают position:fixed;
. Это больше проблема для современного сайта. Причина, по которой они этого не поддерживают, заключается в том, что элемент с фиксированной позицией может вызвать серьезные проблемы с макетом на меньшем экране. Большинство из них трактуют «фиксированный» как «абсолютный», поэтому он все еще находится вне потока страниц, но его можно прокручивать.
Смотрите здесь для получения дополнительной информации: http://www.quirksmode.org/m/css.html - у него есть таблица, показывающая поддержку этой функции (и других) в различных мобильных браузерах. (но учтите, что рынок мобильной связи быстро меняется, и эта таблица может не обновиться)