@Aleksander911

Как добиться одинаковой высоты блоков с одним индетификатором?

Доброго дня всем.
имеется вывод списка в две колонки с одинаковыми id и class:
<dt  class="one-height reg_1636">Текст</dt>
<dd class="one-height reg_1636">Описание текста</dd>
<dt class="one-height reg_1637">Текст2</dt>
<dd class="one-height reg_1637">Описание текста2</dd>
и тд.

Верстка сайта адаптированная и частями из-за длины текста в dd съезжают колонки.
При помощи jquery можно выровнять все колонки по высоте самой большой:
function setEqualHeight(columns)
				{
				var tallestcolumn = 0;
				columns.each(
				function()
				{
				currentHeight = $(this).height();
				if(currentHeight > tallestcolumn)
				{
				tallestcolumn = currentHeight;
				}
				}
				);
				columns.height(tallestcolumn);
				}
				$(document).ready(function() {
				
				setEqualHeight($(".one-height"));
			});

Но это не вариант, т.к. многие колонки имеют небольшой текст, а становятся огромными.
Подскажите как сделать так, чтобы высота ровнялась только по большей dt и dl с одинаковыми классами?
  • Вопрос задан
  • 137 просмотров
Решения вопроса 1
@Aleksander911 Автор вопроса
Решил вопрос без js, используя flex, понимая, что старые браузеры не потянут его. Сам код в натуральном его виде из комплексного компонента каталога Битрикс характеристик карточки товара:
<dl class="product-item-detail-properties">
<dt>Артикул</dt><dd>100172</dd>
<dt>Базовая единица</dt><dd>шт</dd>
...
</dl>


CSS:
.product-item-detail-properties {
    display: flex;
    flex-wrap: wrap;
}
.product-item-detail-properties dt {
    clear: both;
    flex: 0 0 50%;
    overflow: hidden;
    font-weight: bold;
    font-size: 13px;
    padding: 5px 0 5px 10px;
   border-bottom: 1px solid #e5e5e5;
}
.product-item-detail-properties dd {
    font-size: 13px;
    flex: 50% 0 0;
    padding: 7px 0;
    margin: 0;
    border-bottom: 1px solid #e5e5e5;
}
/*чередующийся цвет колонок*/
 .product-item-detail-properties dt:nth-child(4n+1),  .product-item-detail-properties dd:nth-child(4n+2) {
   background: #fbfbfb;
}
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@ambrazhey
Начинающий верстальщик
Для начала НЕ ДОЛЖНО быть одинаковых id, так как он обязан быть уникальным
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы