Статьи

Основы CSS Flexbox, часть 1

Независимо от того, делает ли ваше приложение мобильным или адаптивно настраивается, если вы когда-либо работали над пользовательским интерфейсом, вы, вероятно, понимаете разочарования, связанные с CSS:

Чтобы обойти любые проблемы, с которыми вы могли столкнуться, вы могли бы обратиться к фреймворку, такому как Bootstrap, взглянуть на CSS Grid или, если вы старой школы, застряли с плавающей точкой. Все эти варианты имеют свои преимущества, но, как и все в разработке, имеют некоторые недостатки. Использование фреймворка означает, что вы должны жить с импортом всего этого в свой проект. CSS Grid иногда может показаться немного неуклюжим, особенно если вы новичок в этом. Поплавки хороши, но часто не так выразительны, как в идеале. 

Вот тут-то и приходит Flexbox. Для меня Flexbox находится между CSS Grid и плавает. Он предлагает пользователям гибкость и (близкий к тому же) контроль, который будет иметь сетка с простотой использования поплавков при работе, чтобы контролировать расположение элементов в контейнере. 


Вам также могут понравиться:
CSS-хитрости, которые сделают вашу работу проще .

Начиная

Для начала давайте разберемся, как работает Flexbox. Элементы в гибком контейнере выровнены на основе горизонтальной и вертикальной осей (называемых «строка» и «столбец» соответственно). Пользователи могут определить, какая из них является «главной» осью, а какая — «перекрестной» осью. Главная ось будет определять, как дочерние элементы будут выровнены в контейнере. 

Например, допустим, у меня есть контейнер, содержащий три фиктивных элемента: «foo», «bar» и «merp». Если бы я должен был установить основную ось как «ряд» (горизонтальный), то элементы были бы расположены горизонтально рядом друг с другом, как это (извините за хрень): 

Если бы главная ось была установлена ​​на столбец (вертикальный), то элементы были бы расположены друг над другом, как это:

Мы также можем обратить поток элементов вдоль оси так, чтобы «merp» стал нашим первым элементом, а «foo» — нашим третьим, как это для горизонтального выравнивания: 

и это для вертикального выравнивания: 

Обратное вертикальное выравнивание

Как насчет Кодекса?

Чтобы сделать элемент Flexbox, вам нужно установить его displayзначение flexследующим образом: 


CSS