содержимое за пределами тега html

У меня есть веб-страница, полоса прокрутки не нужна, но я все равно получаю полосу прокрутки. и я получаю раздел, который находится за пределами тегов html. есть коричневый цвет части тела, который появляется за пределами html, я использую firebug, и когда я нахожу указатель мыши на тег html, он выделяет всю страницу, кроме коричневой части внизу

URL-адрес страницы - "noreferrer">

вот изображение, внизу страницы должна быть черная часть.

введите описание изображения здесь


person yossi    schedule 13.04.2011    source источник
comment
@VoteyDisciple @dnewcome +1 за поиск ошибки и предложения различных решений проблемы.   -  person Khez    schedule 14.04.2011


Ответы (3)


Беда здесь в твоем <div id="filter_list" class="dd_list">. Несмотря на то, что вы установили overflow: hidden;, вы не указали высоту для поля, поэтому он радостно прокручивает страницу вниз, в том числе далеко за пределы вашего обычного содержимого.

Установите height: 100px; (или какой бы большой он вам ни был), и остальная часть макета страницы вернется в нормальное состояние.

Примечание по отладке: поскольку в нижней части страницы явно нет проблемных элементов, я попытался просто удалять элементы со страницы один за другим, пока полоса прокрутки не исчезла. Как только я нашел проблемный родительский элемент, я обновил страницу и начал удалять дочерние элементы этого элемента. И я повторял это, пока не добрался до элемента #filter_list, который, наконец, предложил осязаемое объяснение поведения.

person VoteyDisciple    schedule 13.04.2011
comment
Вы также можете использовать display: none и display: block вместо видимости. Помните, что видимость всегда будет «удерживать» пространство, даже если оно не видно, создавая таким образом пустое невидимое пространство. С дисплеем он освобождает это пространство, когда оно вам не нужно. - person Jaspero; 14.04.2011

Если вы хотите, чтобы черная полоса была прикреплена к нижней части, вы можете установить ее положение на фиксированное.

Цвет фона тела будет распространяться на всю клиентскую область браузера независимо от того, насколько велик на самом деле тело.

Я изменил ваш CSS, чтобы поместить черную полосу внизу вашей страницы:

#footer {
  height: 75px;
  background: url(images/bottom_menu_bg02.jpg);
  position: fixed;
  bottom: 0px;
}

Вы можете использовать overflow: hidden, чтобы скрыть полосу прокрутки, но я не уверен, что это действительно то, что вы хотите сделать в данном случае.

person dnewcome    schedule 13.04.2011

Нашел "баг". Это #filter_list. У него есть куча div, которые содержат ... список фильтров, я думаю.

Простое исправление было бы

#filter_list{
    height:400px;
    overflow-y:scroll;
}
person Khez    schedule 13.04.2011