2012-03-13 2 views
1

Как использовать overflow-y в браузерах для Android, например, в Opera Mobile? Если я создаю div с переполнением-y-стилем, тогда он не будет работать, как в настольных браузерах.Как сделать полосы прокрутки в андроид-браузерах

Так что я хочу сделать вертикально прокручиваемый div без использования каких-либо библиотек. Пожалуйста, дайте мне несколько инструкций.

Спасибо заранее,

ответ

3

Сделать две дивы:

<div class='parent-of-scroller'> 
    <div class='scrollable-item'> 
     ... your content ... 
    </div> 
</div> 

Для внешнего DIV, установить overflow:hidden управление размещением позиции прокрутки внутренней DIV, управляя его margin-top с помощью JavaScript. Я считаю, что вы можете использовать сенсорные события для управления положением прокрутки внутреннего div

+0

спасибо, это работает –

+0

Те же проблемы здесь - но не понимает, все решений. Как вы «управляете своей маржинальной версией с помощью javascript»? – Mateng

+0

, управляя margin-top, я имел в виду изменение его целочисленного значения. Вы можете отменить его, чтобы прокрутить вверх (идти ниже нуля) и наоборот. У вас будет какое-то событие, при котором вам потребуется прокрутить раздел и количество пикселей (xx), определяющее, сколько вы хотите прокрутить. Используйте 'element.style.marginLeft =" xx "'; – kishu27

0

Для будущего потомства Opera Mobile 12/Classic, браузер, отмеченный вами в вашем вопросе, имеет очень специфические критерии, которые необходимо соблюдать в для того чтобы получить overflow: scroll или overflow: auto работать:

элемент высота (или ширина) сама по себе не достаточно, чтобы получить Opera Mobile 12 переполняться элемент, и он будет расширяться элементы, если абсолютно не расположены с верхними и нижними значениями. Это отстойно, но когда он абсолютно позиционирован, Opera Mobile 12 добавляет полосы прокрутки к элементам переполнения, но нет поддержки прокрутки сенсорного жеста, а элементы управления полосой прокрутки неровные.

Таким образом, чтобы получить Opera Mobile для фактически добавить полосы прокрутки и переполнение DIV вам нужно изменить пример Кися немного:

<style> 
#parent-of-scroller { 
    position: relative; 
    height: [whatever] 
} 
#scrollable-item { 
    position: absolute; 
    top: 0px; 
    bottom: 0px; 
} 
</style> 

<div class='parent-of-scroller'> 
    <div class='scrollable-item'> 
     ... your content ... 
    </div> 
</div> 

Опера ≥9.5 CSS хак _:-o-prefocus, body:last-child .your-selector-here может помочь вам.

http://barrow.io/overflow-scrolling От

Смежные вопросы