Показать вертикальную полосу прокрутки Div
Мне интересно, как можно постоянно показывать вертикальную полосу div (серая, если нет прокрутки), похожая на наши обычные бары. В основном я пытаюсь разместить весь сайт в div (например, gmail/facebook), поэтому, если страница не достаточно длинная, вся страница сдвигается из-за отсутствия вертикальной полосы прокрутки.
Мне нужно решение этой проблемы. Я попробовал переполнение-y: прокрутить. Но это, похоже, не работает вообще.
Ответы
Ответ 1
В каком браузере вы тестируете?
Какой DOCType вы установили?
Как именно вы декларируете свой CSS?
Вы уверены, что не пропустили ;
до/после overflow-y: scroll
?
Я только что проверил следующее в IE7 и Firefox, и он отлично работает
<!-- Scroll bar present but disabled when less content -->
<div style="width: 200px; height: 100px; overflow-y: scroll;">
test
</div>
<!-- Scroll bar present and enabled when more contents -->
<div style="width: 200px; height: 100px; overflow-y: scroll;">
test<br />
test<br />
test<br />
test<br />
test<br />
test<br />
test<br />
test<br />
test<br />
test<br />
</div>
Ответ 2
Вы пробовали overflow-y:auto
? Это не совсем то, что вы хотите, так как полоса прокрутки появится только при необходимости.
Ответ 3
Всегда: Если вы всегда хотите вертикальную полосу прокрутки, используйте overflow-y: scroll;
jsFiddle:
<div style="overflow-y: scroll;">
......
</div>
При необходимости. Если вам нужна только вертикальная полоса прокрутки, если нужно, используйте overflow-y: auto;
(в этом случае вам нужно указать высоту)
jsFiddle:
<div style="overflow-y: auto; height:150px; ">
....
</div>