#html #css #вёрстка #input #layout
Нужно сделать, чтобы кнопки в ряд занимали всю ширину .row. Сейчас они смещены влево и не тянутся на всю ширину, хотя им присвоено свойство display: table-cell;. Вопрос: почему display: table-cell не работает для инпутов? И можно ли достичь желаемого результата не оборачивая input в дополнительные div? .row{ display: table; table-layout: fixed; width: 100%; border-spacing: 1px 0; background-color: #eee; } .input{ display: table-cell; }
Ответы
Ответ 1
Нужно переделывать на Flexbox, если количество кнопок неизвестно: .row { height: 25px; display: flex; flex-direction: column; flex-wrap: wrap } .row input { page-break-inside: avoid; break-inside: avoid; }Или же поставить ширину 25%, если их количество фиксированно: .row{ display: table; table-layout: fixed; width: 100%; border-spacing: 1px 0; background-color: #eee; } .input{ width: 25%; /* Убираем влияние padding и border на конечную ширину input */ box-sizing: border-box; /* Обнуляем margin */ margin: 0; }Ответ 2
Можно заменить display: table на display: flex + добавить свойство для потомков flex-grow: 1. .row { display: flex; width: 100%; border-spacing: 1px 0; background-color: #eee; } .input { flex-grow: 1; }
Комментариев нет:
Отправить комментарий