@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, так как он обязан быть уникальным
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы