Глядя на попытку установить страницу вверх, где html overflow: hidden
а верхний и нижний колонтитулы фиксированы, а содержимое тела overflow: scroll
.
Текущая проблема заключается в том, что полоса прокрутки отображается в содержимом div. Можно ли установить "основную" полосу прокрутки браузера для взаимодействия с содержимым div?
Revalent CSS:
html {
overflow: hidden;
}
header {
position: fixed;
width: 100%;
height: 15%;
}
footer {
position: fixed;
width: 100%;
bottom: 10%;
height: 5%;
}
#content {
position: fixed;
height: 80%;
max-width: 960px;
margin: 0 auto;
overflow: scroll;
}
Вот понятие: http://jsfiddle.net/6gcfx/ (имейте в виду, что это не основная полоса прокрутки, которая перемещает содержимое по желанию).
Если вы используете процентную высоту (как в своем вопросе), вы можете сделать это таким образом, используя position:fixed
на верхнем и нижнем колонтитуле и position:absolute
на теле
html { overflow: hidden; }
header {
position: fixed;
top: 0;
height:15%;
width: 100%;
background: #ccc;
}
#content {
overflow: scroll;
height: 70%;
}
footer {
position: fixed;
bottom:0%;
height:15%;
width: 100%;
background: #ccc;
}
Если высоты верхнего и нижнего колонтитулов не указаны в процентах, вы можете использовать calc()
. Однако этот подход обычно требует более современных браузеров, поэтому вам придется иметь резервную копию javascript, если вы хотите поддерживать старые браузеры
html { overflow: hidden; }
header {
position: fixed;
top: 0;
height:75px;
width: 100%;
background: #ccc;
}
#content {
position:absolute;
top:75px; /* Height of header */
overflow: scroll;
height: calc(100% - 125px); /* 100% - (headerHeight + footerHeight) */
}
footer {
position: fixed;
bottom:0%;
height:50px;
width: 100%;
background: #ccc;
}
Простите мою новизну, но я думаю, что вижу вашу проблему. Переключите свой контент в div
#content {
position:float;
top:(header size);
И переключите верхний и нижний колонтитулы на
position:fixed;
Таким образом, содержимое должно прокручиваться со строкой прокрутки страницы, а верхний/нижний колонтитул невозможен.
position: float;
свойство. w3schools.com/cssref/pr_class_position.asp
body{overflow:scroll}
, но я его не вижу (кстати, есть дваhtml{overflow:hidden}
). Неясно, что вы спрашиваете