Подтвердить что ты не робот

Показать вертикальную полосу прокрутки Div

Мне интересно, как можно постоянно показывать вертикальную полосу div (серая, если нет прокрутки), похожая на наши обычные бары. В основном я пытаюсь разместить весь сайт в div (например, gmail/facebook), поэтому, если страница не достаточно длинная, вся страница сдвигается из-за отсутствия вертикальной полосы прокрутки.

Мне нужно решение этой проблемы. Я попробовал переполнение-y: прокрутить. Но это, похоже, не работает вообще.

4b9b3361

Ответ 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>