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


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

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

3 62

3 ответа:

в каком браузере вы тестируете?

какой тип документа вы установили?

как именно вы объявляете свой CSS?

вы уверены, что не пропустили ; перед/после overflow-y: scroll?

Я только что протестировал следующее в IE7 и Firefox, и он отлично работает

<!-- Scroll bar present but disabled -->
<div style="width: 200px; height: 100px; overflow-y: scroll;">
    test
    </div>
<!-- Scroll bar present and enabled -->        
    <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>

вы пробовали overflow-y: auto? Это не совсем то, что вы хотите, так как полоса прокрутки появится только тогда, когда это необходимо.

обязательно : если вы всегда хотите вертикальную полосу прокрутки, используйте overflow-y: scroll;

jsFiddle:

<div style="overflow-y: scroll;">
......
</div>

при необходимости: если вы хотите только вертикальную полосу прокрутки, когда это необходимо, используйте overflow-y: auto; (в этом случае нужно указать высоту)

jsFiddle:

<div style="overflow-y: auto; height:150px; ">
....
</div>