Создание высоты div 100% от высоты порта просмотра или всей высоты страницы



Если вы посмотрите на этот пример jsfiddle: http://jsfiddle.net/2YbpZ/



Вы можете видеть, что оба элемента sidebar и content тянутся к нижней части окна просмотра. Вот чего я хочу.



Однако, когда дается некоторый контент, который растягивает страницу и требует от пользователя прокрутки: http://jsfiddle.net/p6qGg/



Дивы sidebar и content отсекаются в нижней части иллюминатора. Я знаю, почему это происходит, потому что 100% относится ко всему высота родительского элемента, который в данном случае является view-port, но когда я изменяю разметку, чтобы иметь оболочку div, окружающую два элемента и иметь min-height: 100%, это происходит: http://jsfiddle.net/Lr6k9/



Аналогично, если содержимое больше не достаточно длинно, чтобы не соответствовать порту просмотра, то sidebar и content divs действуют так, как будто они вообще не имеют высоты: http://jsfiddle.net/xsHHv/



Итак, мой вопрос заключается в том, как я могу сделать так, чтобы sidebar и content дивы были высота порта просмотра, если содержимое не растягивается со страницы, или у них есть высота содержимого, если это так?

404   1  

1 ответ:

Хитрость заключается в том, чтобы дать вашему элементами огромную padding-bottom, с соответствующим негативным margin-bottom:

html, body {
    height: 100%;
}

#wrapper {
    min-height: 100%;
    overflow: hidden;
}

#sidebar, #content {
    float: left;
    padding-bottom: 999em;
    margin-bottom: -999em;
}

Вот твоя скрипка: http://jsfiddle.net/Lr6k9/4/

Comments

    Ничего не найдено.