|
1 / 1 / 0
Регистрация: 08.09.2018
Сообщений: 11
|
|
Выравнивание блоков флексбоксом17.03.2019, 05:20. Показов 1134. Ответов 10
Метки нет (Все метки)
Добрый день.
Подскажите, как правильно выравнивать блоки вертикально? Я задаю флекс-контейнеру flex-direction: column и justify-content: space-between/around, но почти в 100% случаев без дополнительных margin/padding результат выглядит сомнительно и далек от оригинала(макета). А с дополнительными margin/padding верстка ведет себя непредсказуемым образом. По крайней мере у меня. И до кучи вопрос по min-heigth/max-height. Когда лучше использовать?
0
|
|
| 17.03.2019, 05:20 | |
|
Ответы с готовыми решениями:
10
Выравнивание блоков Выравнивание блоков Выравнивание блоков |
|
640 / 481 / 172
Регистрация: 26.05.2016
Сообщений: 2,674
|
|
| 17.03.2019, 06:14 | |
|
Czo, [del] Используйте align-item.
0
|
|
|
1 / 1 / 0
Регистрация: 08.09.2018
Сообщений: 11
|
|
| 17.03.2019, 09:12 [ТС] | |
|
Если они в колонку будут, то align-item будет выравнивать колонку по-горизонтали. А мне нужно как-то вертикально это делать.
0
|
|
|
278 / 272 / 106
Регистрация: 12.01.2016
Сообщений: 1,666
|
|
| 17.03.2019, 10:26 | |
|
Czo, А почему Вы спецификацию не читаете? Разве это так сложно, пойти в гугле найти спецификацию и прочитать ее разок, что бы не задавать глупые вопросы или на ютубе уйма видео об этих флексах. А если Вам нужно будет что бы блоки находились в низу поперечной оси Вы тоже будете писать на форуме?
Приоткрою для Вас завесу и скажу что у свойства justify-content кроме этих двух свойств space-between/around есть еще и эти flex-start / flex-end / center / space-between / space-around и я думаю Вам не составит труда понять какой из них нужно применять. Это на всякий случай, если Вы вдруг не поймете. Кликните здесь для просмотра всего текста
flex-direction: column; justify-content: center;
0
|
|
|
1 / 1 / 0
Регистрация: 08.09.2018
Сообщений: 11
|
|
| 17.03.2019, 11:41 [ТС] | |
|
Приоткрою Вам завесу тайны: этот форум и существует для того чтобы новички могли задавать глупые вопросы. Если Вас это раздражает, то зачем Вы вообще здесь?
Про вышеупомянутые свойства justify-content я знаю, но мне их функционала НЕ ХВАТАЕТ, т.к. в макете, например, из ряда вертикальных блоков, одни блоки могут находиться почти впритык друг к другу, другие могут иметь приличный отступ и т.д. Для того, чтобы расталкивать их друг от друга или компановать вместе, я использую внешние/внутренние отступы и дополнительные контейнеры, но мне кажется, что я делаю что-то неправильно или пытаюсь изобрести велосипед, поэтому я и хочу узнать, как опытные девелоперы справляются с такими задачами. Возможно, я изначально недостаточно полно изложил суть вопроса, но это не повод впадать в истерику.
0
|
|
|
278 / 272 / 106
Регистрация: 12.01.2016
Сообщений: 1,666
|
||||||||
| 17.03.2019, 12:09 | ||||||||
|
Czo,
![]() Сначала Вы спросили: А потому спрашиваете почему у людей истерика? По Вашему следующему ответу я понял что при flex-direction: column; Вам нужно расположить их по центру поперечной оси, вот я Вам и предложил решение, а теперь Вы говорите что
Добавлено через 5 минут Но что в итоге Вам нужно не понятно
0
|
||||||||
|
278 / 272 / 106
Регистрация: 12.01.2016
Сообщений: 1,666
|
|||||||||||
| 17.03.2019, 12:18 | |||||||||||
|
Вот решение, которое Вы просили
0
|
|||||||||||
|
1 / 1 / 0
Регистрация: 08.09.2018
Сообщений: 11
|
||
| 17.03.2019, 13:10 [ТС] | ||
|
Не хочу спорить по каждому слову, которое я написал и на которое получил ответ. Это будет уже спор ради спора.
К примеру, как вы код копипастили выше, чтобы он так наглядно выгядел? Или пикчу добавляли(мне вроде пока нельзя, до 20 сообщений правила запрещают). Ну, вот почти конкретная ситуация из макета: <sector> <div class="flex-container"> <h2>about us</h2> <p>lorem ipsum</p> <div>какой-то блок</div> </div> </sector> Задачи: 1)расположить блоки вертикально(делал через flex-direction: column) 2)отцентровать их по горизонтали(align-items:center) 3)отступы: - внутренние отступы сверху и снизу контейнера: в макете 130px; - h2 и p разделяется отступом: в макете 40px; - p и нижележащий div разделяется отступом: в макете 130px; Я не особо парился на тему pixel perfect, поэтому, чтобы создать отступы по верхнему/нижнему краю решил применить space-around на контейнер и посмотреть, что будет. В этом случае, флекс раскидал всё равномерно, но h2 и p оказались слишком далеко друг от друга. Я задал padding: 130px 0; для контейнера, обернул h2 и p в отдельный блок(чтобы сделать их одним флекс-элементом и "склеить") и применил space-between. Результат получился более-менее приемлимый, но "расклеивать" их пришлось дополнительным margin. Кроме того, у меня почему-то возникали ошибки, если для контейнере указан min-height или max-height. Флекс почему-то вообще убирал вертикальные отступы и собирал блоки в кучу(визуально это выглядело, как justify-content: center или вроде того). Зато с конкретной высотой(например, height:700px), флекс нормально растягивал блоки по контейнеру. Но меня терзают сомнения, не будет ли проблем с отображением, если, например, потребуется добавить еще несколько блоков в этот контейнер? В макете подобных ситуаций, где у блоков были разные вертикальные отступы, было довольно много. Я привел самый простой пример. Мой вопрос в сущности был не по конкретной ситуации, а скорее в общем, т.к. по факту с проблемами я разобрался, но мне кажется, что сделал я это достаточно криво. Надеюсь, максимально подробно изложил суть вопроса.
0
|
||
|
278 / 272 / 106
Регистрация: 12.01.2016
Сообщений: 1,666
|
||
| 17.03.2019, 15:33 | ||
|
Czo,
1. Вставляешь архивы, изображение и прочие файлы (там будет показан их список) 2. Выделение текста, пример: flex-direction: column;3. Вставка ссылок 4. Смайлики ![]() Сейчас посмотрю по Вашей проблеме.
0
|
||
|
278 / 272 / 106
Регистрация: 12.01.2016
Сообщений: 1,666
|
|||||||||||
| 17.03.2019, 15:44 | |||||||||||
|
Czo, По Вашему вопросу у меня получилось так: Code Pen
1
|
|||||||||||
|
1 / 1 / 0
Регистрация: 08.09.2018
Сообщений: 11
|
|
| 17.03.2019, 16:26 [ТС] | |
|
Ок, логику понял. И спасибо за терпение
0
|
|
| 17.03.2019, 16:26 | |
|
Помогаю со студенческими работами здесь
11
Выравнивание блоков текста Горизонтальное выравнивание блоков
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога
Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
|
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
|
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога
В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
|
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|
|
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога
Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
|
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
|
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования.
Часть библиотеки BedvitCOM
Использованы. . .
|
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога
SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
|