2015-02-23 2 views
1

У меня есть 3 divs с полосой прокрутки. если мы переместим одну полосу прокрутки и она дойдет до страницы страницы прокрутки, она также прокручивается.при прокрутке прокрутки страницы прокрутки внутренней строки

Я хочу исправить эту проблему.

Скриншот для этого. http://jsfiddle.net/78h8e88x/2/

html, body { 
height: 100%; 
position:relative; 
} 

    body 
{ 

line-height:100px; 
text-align:center; 
} 

    .left 
{ 
    position:absolute; 
    margin-left:5%; 
    margin-top:3%; 
    display:block; 
    height:80%; 
    width:20%; 

    overflow:auto; 
} 

    .center 
{ 
position:absolute; 
margin-left:25%; 
margin-top:3%; 
display:block; 
height:80%; 
width:50%; 

overflow:auto; 
    } 

.right 
{ 
    position:absolute; 
    margin-left:75%; 
    margin-top:3%; 
    display:block; 
    height:80%; 
    width:20%; 

    overflow:auto; 
} 

если мы перемещаем одну полосу прокрутки и достигает конца прокрутки страницы области также свитки.

+2

Вы можете отключить переполнение вашего [тела] (http://jsfiddle.net/78h8e88x/3/). –

+0

@ RienNeVaPlu͢s, я не могу этого сделать, потому что есть некоторый контент ниже – asdfdefsad

ответ

2

Элемент body получает по умолчанию 8px (по крайней мере, в Chrome). В случае вашей скрипки это делает содержимое немного больше, чем окно, и, таким образом, появляется полоса прокрутки. Установка поля на 0 на теле приведет к удалению этой полосы прокрутки. См. Jsfiddle: https://jsfiddle.net/vbvmLbmq/

Это, конечно, только фиксирует поведение прокрутки в вашей скрипке, которая зависит от размера окна. Вы можете предотвратить прокрутку элементов html, body полностью, добавив к ним правило css overflow: hidden;, но имейте в виду, что также будут скрывать любые элементы, которые проходят мимо высоты этих элементов.

Продолжая прокрутку страницы после того, как прокрутка элементов дочернего элемента дошла до конца, это поведение браузера, на которое вы не можете влиять на javascript на своей странице.

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