Колонки одинаковой высоты на JQuery

Задача: Есть, допустим, несколько блоков div, которым надо сделать одинаковую высоту, независимо от содержимого.

Решение: В интернете много всяких решений. Но мне понравилось одно на JQuery. Делается просто и со вкусом. Итак, кодим. Для начала создаем структуру:

<div>
  <div class="first column">1<br/></div>
  <div class="second column">1<br/>1<br/>1<br/>1<br/>1<br/>1<br/>1<br/></div>
</div>

Класс column обязателен, добавим немного стилей:

.column {
    width : 20%;
    float : left
}
.first {
    background : red
}
.second{
    background : blue
}

Подключаем JQuery:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>

И сам скриптик:

<script>
    function equalHeight(group) {
        var tallest = 0;
        group.each(function() {
            thisHeight = $(this).height();
            if(thisHeight > tallest) {
                tallest = thisHeight;
            }
        });
        group.height(tallest);
    }
    $(document).ready(function(){
        equalHeight($(".column"));
    }); 
</script>

Что тут и как работает?

А просто вызывается функция equalHeight, которая сравнивает высоту блоков, и задает всем блокам, имеющим класс column, одинаковую высоту через инлайн-стили. Все просто.

Обновление

За окном шел 2019 год, и решение немного устарело. Для более современного решения используем скрипт matchHeight.

Колонки одинаковой высоты на CSS Flex

Если вы верстаете сайты только под современные браузеры, то вам еще лучше. Вы можете отказаться от использования Javascript в сторону использования CSS Flexbox или CSS Grid.

<div class="list">
    <div class="list__item"></div>
    <div class="list__item"></div>cod
    <div class="list__item"></div>
    <div class="list__item"></div>
</div>
.list {
    display   : flex;
    flex-wrap : wrap;
}
.list__item {
    display        : flex;
    width          : 25%;
    flex-wrap      : wrap;
    flex-direction : column;
}

See the Pen Equal Height Columns in CSS Flex by Pavel Saik (@PavelSaik) on CodePen.

Несколько сайтов на одном VPS: размещение для студии

Один сервер для нескольких проектов упрощает управление и может снизить расходы. Разбираем, как разделить сайты, посчитать полную стоимость размещения и выбрать момент для отдельного сервера.

VPS для October CMS: как выбрать сервер и подготовить его к работе

Для October CMS важны совместимые версии ПО, доступ к консоли и настройка окружения. Разбираем, с какой конфигурации начать проверку и что подготовить перед запуском сайта.

Где хранить резервные копии сайта, чтобы они пережили аварию

Архив есть. А получится ли из него вернуть сайт? Разбираем состав резервной копии, выбор хранилища и проверку, которая покажет, переживёт ли бэкап аварию сервера.

Атаки на дата-центры: как подготовить сайт к отказу площадки

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

Последние кейсы
Посмотреть все проекты
Начать проект вместе с нами
Заполните форму и отправьте
нам сообщение!
Если у Вас возникли вопросы, предложения, либо Вы желаете оформить заявку на заказ услуги — Добро пожаловать!
Контакты:
Бронзовый партнер October CMS:
Бронзовый партнер October CMS