Более эффективный способ использования JavaScript для прикрепления столбцов к нижней части страницы?

0

Я некоторое время разрабатывал веб-сайт, его макет из двух столбцов, и я хочу, чтобы каждый столбец находился в нижней части страницы независимо от разрешения. В настоящее время для этого у меня есть два файла JavaScript: один, который настраивает длину столбца, чтобы он соответствовал окну браузера, а другой файл JavaScript соответствовал размеру. Одна из основных проблем, которую я имею, заключается в том, что если вы измените размер окна браузера, столбцы не будут автоматически настраиваться, поэтому они могут не перейти в нижнюю часть страницы. Мне интересно, есть ли способ сделать это в одном файле, и, самое главное, столбцы всегда будут придерживаться нижней части страницы независимо от размера окна. Вот код для каждого файла JavaScript:

Отрегулируйте высоту столбца в окне браузера:

$(function(){
    var grid = $(window).height();
    var gridFinal = grid - 140;
    $('.grid').css({'min-height': ((gridFinal))+'px'});
});

Отрегулируйте другой столбец в соответствии с измененным размером:

window.onload =  getIDHeight;

function getIDHeight() {
    var myHomeHeight = document.getElementById("home").offsetHeight;
    document.getElementById("home-services").style.height = myHomeHeight - 15 +"px";
}


window.addEventListener('load', function (){

var myNewsHeight = document.getElementById("blog").offsetHeight;
document.getElementById("social-media").style.height = myNewsHeight - 15 +"px";
});

window.addEventListener('load', function (){

var myAboutHeight = document.getElementById("references").offsetHeight;
    document.getElementById("about").style.height = myAboutHeight - 25 +"px";
});

window.addEventListener('load', function (){

var myServicesHeight = document.getElementById("services").offsetHeight;
document.getElementById("guidelines").style.height = myServicesHeight - 15 +"px";
});

window.addEventListener('load', function (){

var myTipsHeight = document.getElementById("tips").offsetHeight;
    document.getElementById("recommendations").style.height = myTipsHeight - 20 +"px";
});

window.addEventListener('load', function (){

var myContactHeight = document.getElementById("contact-info").offsetHeight;
    document.getElementById("email").style.height = myContactHeight - 15 +"px";
});

Любая помощь здесь будет принята с благодарностью. Если есть более простой способ сделать это, что увеличивает функциональность, пожалуйста, дайте мне знать.

  • 0
    Просто мысль: если вы можете жить с «нижней части окна », в отличие от «нижней части страницы », есть position: fixed .
  • 0
    Есть ли причина, по которой один файл использует jquery, а другой нет?
Показать ещё 1 комментарий

1 ответ

0

Вы можете сделать это с помощью CSS. Установите высоту html & body на 100%, затем установите столбцы на высоту 100%

Скрипт здесь: DEMO

html,body{
    height:100%;
}
#column1{
    height:100%;
}
#column2{
    height:100%;
}
  • 0
    Я не верю, что это работает, так как я использую фиксированный нижний колонтитул и помещаю столбцы в оболочку. Я пробовал 100% высоты, но они не работают.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню