Jump to content

Гибкий макет CSS-блока

Флексбокс
Гибкий макет CSS-блока
Аббревиатура Флексбокс
Родное имя
Гибкий макет CSS-блока
Статус Кандидат в рекомендации (CR)
Год начался 23 июля 2009 г. ( 23 июля 2009 г. ) [1]
Последняя версия Уровень 1 [2]
9 ноября 2018 г. ( 09.11.2018 ) [2]
Предварительная версия Рабочий проект
25 марта 2021 г. ( 25 марта 2021 г. ) [3]
Организация
комитет Рабочая группа CSS [2]
Редакторы
  • Тэб Аткинс мл.
  • Элика Дж. Этемад
  • Россен Атанасов
Бывшие редакторы
[2]
Базовые стандарты CSS
Веб-сайт www .w3 .org /ТР /css-flexbox-1 /

CSS Flexible Box Layout , широко известный как Flexbox , [2] — это модель веб-макета CSS . [4] Он находится на . стадии рекомендации кандидата (CR) W3C [2] Гибкий макет позволяет адаптивные автоматически располагать элементы внутри контейнера в зависимости от размера области просмотра (экрана устройства).

Концепции

[ редактировать ]

Большинство веб-страниц написаны с использованием комбинации HTML (языка гипертекстовой разметки) и CSS (каскадных таблиц стилей). Короче говоря, HTML определяет содержимое и логическую структуру страницы , а CSS определяет, как она выглядит : цвета, шрифты, форматирование, макет и стиль.

Макет CSS flex-box — это особый способ указать макет HTML-страниц.

Одной из наиболее определяющих особенностей гибкого макета является его способность подгоняться по форме в зависимости от среды просмотра. Гибкие блоки можно регулировать по размеру — либо уменьшать, чтобы избежать ненужной монополизации пространства, либо увеличивать, чтобы освободить место для содержимого, вписывающегося в его границы. Более того, гибкий макет менее ограничителен с точки зрения потока контента, чем другие модели макета CSS, которые обычно являются однонаправленными. Гибкий направленный поток можно указать вправо, влево, вверх или вниз. Отдельные элементы внутри гибкого контейнера также могут автоматически переставляться в соответствии с доступным пространством макета. [3]

С конца 2000-х годов интенсивное использование Интернета мобильными агентами привело к созданию «гибких макетов» и адаптивных элементов для растущего разнообразия размеров экранов . [5] В 2010-х годах интенсивное использование популярных JavaScript макетирования фреймворков , таких как Bootstrap , вдохновило CSS на создание спецификаций гибкого блока и сетки. [6]

Модули CSS включали подобные решения, такие как Flexbox. [2] и сетка . [7] Flexbox изначально основан на аналогичной функции, доступной в XUL , наборе инструментов пользовательского интерфейса от Mozilla , используемом в Firefox . [8] [9]

По состоянию на декабрь 2022 г. , 99,68% установленных браузеров (99,59% браузеров для настольных компьютеров и 100% мобильных браузеров) поддерживают CSS Flexible Box Layout. [10]

Терминология

[ редактировать ]

Следующие термины связаны с моделью макета flexbox.

Гибкий контейнер
Родительский элемент, содержащий все гибкие элементы. Используя свойство отображения CSS, контейнер можно определить как гибкий или встроенный.
Гибкий элемент
Любой прямой дочерний элемент, содержащийся в гибком контейнере, считается гибким элементом. Любой текст внутри элемента контейнера заключен в неизвестный гибкий элемент.
Топоры
Каждый гибкий блок содержит две оси: главную и поперечную. Основная ось — это ось, по которой элементы выравниваются друг с другом. Поперечная ось перпендикулярна главной оси.
Гибкое направление
Устанавливает главную ось. Возможные аргументы: строка (по умолчанию), обратная строка, столбец, обратная колонка.
Justify-содержание
Определяет, как содержимое размещается на главной оси текущей строки. Необязательные аргументы: слева, справа, по центру, пространство между, пространство вокруг.
Выровнять элементы
Определяет значение по умолчанию для размещения гибких элементов на поперечной оси каждой строки.
Выровнять-контент
Определяет значение по умолчанию для выравнивания линий поперечной оси.
Выровнять-самостоятельно
Определяет, как отдельный элемент размещается вдоль поперечной оси. Это переопределяет любые значения по умолчанию, установленные с помощью align-items.

Направления

[ редактировать ]
перекрестный старт
перекрестный
Стороны перекрестного начала/конца определяют, где гибкие линии заполняются гибкими элементами от перекрестного начала до перекрестного конца.
главный старт
основной конец
Стороны main-start/main-end определяют, с чего начать размещение гибких элементов внутри гибкого контейнера, начиная с основного начала и заканчивая основным концом.
Заказ
Размещает элементы в группах и определяет, в каком порядке они должны быть размещены в контейнере.
Гибкий поток
Сокращения flex-direction и flex-wrap для размещения гибкого содержимого.
Линии
Гибкие элементы могут быть размещены либо на одной строке, либо на нескольких строках, как определено свойством flex-wrap, которое управляет как направлением поперечной оси, так и тем, как линии складываются внутри контейнера.
Основной размер
Размер креста
Основной размер и поперечный размер — это высота и ширина гибкого контейнера, каждый из которых относится к основной и поперечной осям соответственно.

Использование

[ редактировать ]

Чтобы обозначить элемент как гибкий элемент, необходимо установить для свойства отображения CSS элемента значение flex или inline-flex, как показано ниже:

display: flex;

Или:

display: inline-flex;

При установке для отображения одного из двух значений, указанных выше, элемент становится гибким контейнером, а его дочерние элементы — гибкими элементами. Установка отображения на flex делает контейнер элементом блочного уровня , а установка отображения на inline-flex делает контейнер элементом строчного уровня . [4]

Выровнять по центру

[ редактировать ]

Одним из преимуществ flexbox является возможность легко выравнивать элементы внутри контейнера по центру страницы как по вертикали, так и по горизонтали.

display: flex;
align-items: center;
justify-content: center;
  1. ^ «История публикаций модуля гибкого макета CSS, уровень 1 — W3C» . W3C . нд . Проверено 8 апреля 2021 г.
  2. ^ Jump up to: а б с д и ж г Аткинс-младший, Таб; Этемад, Элика Дж.; Атанасов, Россен; Могилевский, Алекс; Барон, Л. Дэвид; Дикин, Нил; Хиксон, Ян; Хаятт, Дэвид, ред. (09.11.2018). «Модуль гибкого макета CSS, уровень 1» . W3C . Проверено 8 апреля 2021 г.
  3. ^ Jump up to: а б Аткинс-младший, Таб; Этемад, Элика Дж.; Атанасов, Россен; Могилевский, Алекс; Барон, Л. Дэвид; Дикин, Нил; Хиксон, Ян; Хаятт, Дэвид, ред. (25 марта 2021 г.). «Модуль гибкого макета CSS, уровень 1» . Черновики редактора рабочей группы CSS . Проверено 8 апреля 2021 г.
  4. ^ Jump up to: а б «Основные понятия флексбокса» . Веб-документы MDN . нд . Проверено 8 апреля 2021 г.
  5. ^ Бейл, Джефф (23 октября 2012 г.). «Используйте медиазапросы CSS для создания адаптивных веб-сайтов» . Разработчик IBM . Архивировано из оригинала 13 октября 2020 г. Проверено 8 апреля 2021 г.
  6. ^ Шеперд, Ричард (19 сентября 2011 г.). «Гибкая компоновка CSS3: все, что я хотел бы знать, когда начинал» . Разрушительный журнал . Проверено 8 апреля 2021 г.
  7. ^ Аткинс-младший, Таб; Этемад, Элика Дж.; Атанасов, Россен; Бруфау, Ориол; Могилевский, Алекс; Капп, Фил, ред. (18 декабря 2020 г.). «Модуль макета сетки CSS, уровень 1» . W3C . Рабочая группа CSS . Проверено 8 апреля 2021 г.
  8. ^ Шеперд, Ричард (19 сентября 2011 г.). «Гибкая компоновка CSS3: все, что я хотел бы знать, когда начинал» . Разрушительный журнал . Проверено 8 апреля 2021 г.
  9. ^ Модуль гибкой компоновки блоков, рабочий проект W3C, 23 июля 2009 г.
  10. ^ «Модуль гибкой компоновки CSS» . Могу ли я использовать . Проверено 3 сентября 2020 г.
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 3d2879a3fcc39cc84784132e3a9db62e__1707855300
URL1:https://arc.ask3.ru/arc/aa/3d/2e/3d2879a3fcc39cc84784132e3a9db62e.html
Заголовок, (Title) документа по адресу, URL1:
CSS Flexible Box Layout - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)