Latest web development tutorials

CSS3 Flexible Box

CSS3 Flexible Box представляет собой новый режим макета.

CSS3 Flexible Box (Flexible Box или flexbox), когда страница является необходимость адаптации к различным размерам экрана и типов устройств, когда элементы должны обеспечить правильное расположение поведения.

Целью введения гибкой модели компоновки Пакетик, чтобы обеспечить более эффективный способ организовать для контейнера подэлементов, выравнивание и распределение пустого пространства.


Поддержка браузеров

Цифры в таблице представляют первый браузер для поддержки номер версии недвижимости.

Сразу после номера -webkit- браузера или -moz- указанного префикса.

свойство
Базовая поддержка
(Однолинейная flexbox)
29,0
21,0 -webkit-
11,0 22,0
18,0 -moz-
6.1 -webkit- 12.1 -webkit-
Многоканальный flexbox 29,0
21,0 -webkit-
11,0 28,0 6.1 -webkit- 17,0
15,0 -webkit-
12.1

содержание CSS3 Flexible Box

Гибкая коробка выполнена из эластичного контейнера (Flex контейнера) и эластичных субэлементов (Flex элементов) компонентов.

Эластичный контейнер путем установки свойства дисплея является гибким или инлайн-флекс будет определяться как эластичную емкость.

Эластичный контейнер содержит один или более упругих субэлементов.

Примечание: эластичный внешний контейнер и упругий элемент является потомком нормального рендеринга. Гибкая коробка определяет только то, как упругая дочерние элементы в макете эластичного контейнера.

Гибкая подэлемент обычно отображается в поле упругой линии. По умолчанию каждый контейнер только одна строка.

Ниже показан упругий элемент дочерние элементы отображаются в одной строке, слева направо:

примеров

<! DOCTYPE HTML>
<HTML>
<Head>
<Style>
.flex-контейнер {
дисплей: -webkit-флекс;
Дисплей: Flex;
ширина: 400px;
высота: 250px;
фонового цвета: светло - серого;
}

.flex-элемент {
цвет фона: CornflowerBlue;
ширина: 100px;
высота: 100px;
Запас: 10px;
}
</ Style>
</ Head>
<Body>

<Div класс = "флекс-контейнер">
<Div класс = "Flex-элемент"> флекс пункт 1 </ DIV>
<Div класс = "Flex-элемент"> флекс пункт 2 </ DIV>
<Div класс = "Flex-элемент"> Flex пункт 3 </ DIV>
</ Div>

</ Body>
</ HTML>

Попробуйте »

Конечно, мы можем изменить расположение.

Если мы устанавливаем direction свойство rtl (справа налево), расположение эластичных субэлементов изменится, макеты страниц изменения также следует:

примеров

тело {
Направление: РТЛ;
}

.flex-контейнер {
дисплей: -webkit-флекс;
Дисплей: Flex;
ширина: 400px;
высота: 250px;
фонового цвета: светло-серого;
}

.flex-элемент {
цвет фона: CornflowerBlue;
ширина: 100px;
высота: 100px;
Запас: 10px;
}

Попробуйте »


Flex-направление

flex-direction порядок определяет упругую подэлемент в родительском контейнере.

грамматика

flex-direction: row | row-reverse | column | column-reverse

flex-direction значения:

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

Следующий пример иллюстрирует row-reverse использование:

примеров

.flex-контейнер {
дисплей: -webkit-флекс;
Дисплей: Flex;
-webkit-флекс-направление: рядного обратный;
Flex-направление: строки обратного хода;
ширина: 400px;
высота: 250px;
фонового цвета: светло-серого;
}


Попробуйте »

Следующий пример иллюстрирует column , используемый:

примеров

.flex-контейнер {
дисплей: -webkit-флекс;
Дисплей: Flex;
-webkit-флекс-направление: колонка;
Flex-направление: колонка;
ширина: 400px;
высота: 250px;
фонового цвета: светло-серого;
}

Попробуйте »

Следующие примеры демонстрируют column-reverse использование:

примеров

.flex-контейнер {
дисплей: -webkit-флекс;
Дисплей: Flex;
-webkit-флекс-направление: колонка обратный;
Flex-направление: колонки заднего хода;
ширина: 400px;
высота: 250px;
фонового цвета: светло-серого;
}

Попробуйте »

Атрибут оправдает-контент

Содержание выравнивания (обосновывать-содержание) на упругие свойства приложения контейнера, упругие эластичные элементы контейнера выровнены вдоль главной оси (главной оси).

Синтаксис оправдает-содержание выглядит следующим образом:

justify-content: flex-start | flex-end | center | space-between | space-around

Каждый стоимостной анализ:

  • флекс-старт:

    Гибкий проект на первой линии рядом с наполнением. Это значение по умолчанию. Первый основной пуск от внешних краев упругого элемента помещается в главном старта края линии, и последующее заподлицо в свою очередь, помещен упругий член.

  • Flex-конец:

    Гибкий проект до конца строки, рядом с наполнением. Первые главный конец элементы из-за пределов эластичных нитей помещаются в главный конец края линии, и последующее заподлицо в свою очередь, помещен упругий член.

  • центр:

    Гибкий проект в центре рядом с заливкой. (Если оставшееся свободное пространство является отрицательным, проект также будет переполняться эластичность в обоих направлениях).

  • Пространство между ними:

    Гибкий проект равномерно распределен по ряду. Если пространство является отрицательным или только упругая термин, значение эквивалентно флекс-старт. В противном случае, основного начинать с внешних краев первой строки и упругого элемента выравнивания, в то время как главный конец линии и боковой линии маржа в прошлом упругая термин выравнивание и распределение оставшихся элементов на упругой линии, примыкающий на равном расстоянии пунктов.

  • Пространство вокруг:

    Гибкий проект равномерно распределен по линии, по обе стороны от левой половины пространства. Если пространство является отрицательным или только упругая термин, значение эквивалентно центру. В противном случае, эластичность проекта по линии распределения и на одинаковом расстоянии друг от друга (например, 20 пикселей), оставляя половину интервала (1/2 * 20px = 10px) между головой и хвостом с обеих сторон и эластичного контейнера.

Renderings показать:

Следующий пример демонстрирует flex-end использование:

примеров

.flex-контейнер {
дисплей: -webkit-флекс;
Дисплей: Flex;
-webkit-оправдает-контента: Flex-конец;
обосновывать-контента: Flex-конец;
ширина: 400px;
высота: 250px;
фонового цвета: светло-серого;
}

Попробуйте »

Следующий пример демонстрирует center обработки использования Коллекция :

примеров

.flex-контейнер {
дисплей: -webkit-флекс;
Дисплей: Flex;
-webkit-оправдает-контента: центр;
обосновывать-содержание: центр;
ширина: 400px;
высота: 250px;
фонового цвета: светло-серого;
}

Попробуйте »

Следующие примеры демонстрируют space-between использованием:

примеров

.flex-контейнер {
дисплей: -webkit-флекс;
Дисплей: Flex;
-webkit-оправдает-контента: пространство между ними;
обосновывать-содержание: пространство между ними;
ширина: 400px;
высота: 250px;
фонового цвета: светло-серого;
}

Попробуйте »

Следующие примеры демонстрируют space-around использования:

примеров

.flex-контейнер {
дисплей: -webkit-флекс;
Дисплей: Flex;
-webkit-оправдает-контента: пространство вокруг;
обосновывать-содержание: пространство вокруг;
ширина: 400px;
высота: 250px;
фонового цвета: светло-серого;
}

Попробуйте »

ALIGN-элементы недвижимости

align-items установки или извлечения упругого элемента на стороне оси коробки ( по вертикальной оси) направлении размещени.

грамматика

align-items: flex-start | flex-end | center | baseline | stretch

Каждый стоимостной анализ:

  • Flex-старт: граница сторона коробки элемента упругой оси (вертикальная ось) по отношению к начальной позиции оси живой стороне границы стартовой линии.
  • флекс конец: упругая граница стороны оси блока элемента (вертикальная ось) по отношению к исходной позиции, чтобы жить конец вала на стороне линии границы.
  • центр: элемент коробки упругая помещен в середине оси со стороны линии (вертикальная ось) на. (Если размер меньше, чем размер упругой линии гнездового элемента, то есть такой же длины в обоих переливом направлениях).
  • Исходные данные: коробка элементы, такие как упругое внутреннего вала и линии вала со стороны одно и то же, значение эквивалента "флекс-старт". В других случаях значение будет участвовать в базовой линии выравнивания.
  • растягивать: Если размер атрибута Маржа коробки определяет размер стороны вала 'авто', его значение будет близко к позициям, как размер, но будет следовать свойство 'мин / макс-ширина / высота' ограничения.

Следующий пример демонстрирует stretch(默认值) по stretch(默认值) использование:

примеров

.flex-контейнер {
дисплей: -webkit-флекс;
Дисплей: Flex;
-webkit-ALIGN-элементы: стрейч;
выравнивать-элементы: растянуть;
ширина: 400px;
высота: 250px;
фонового цвета: светло-серого;
}

Попробуйте »

Следующий пример демонстрирует flex-start использования:

примеров

.flex-контейнер {
дисплей: -webkit-флекс;
Дисплей: Flex;
-webkit-ALIGN-элементы: Flex-старт;
выравнивать-элементы: Flex-старт;
ширина: 400px;
высота: 250px;
фонового цвета: светло-серого;
}

Попробуйте »

Следующий пример демонстрирует flex-end использование:

примеров

.flex-контейнер {
дисплей: -webkit-флекс;
Дисплей: Flex;
-webkit-ALIGN-элементы: Flex-конец;
выравнивать-элементы: Flex-конец;
ширина: 400px;
высота: 250px;
фонового цвета: светло-серого;
}

Попробуйте »

Следующий пример демонстрирует center обработки использования Коллекция :

примеров

.flex-контейнер {
дисплей: -webkit-флекс;
Дисплей: Flex;
-webkit-ALIGN-элементы: центр;
выравнивать-элементы: центр;
ширина: 400px;
высота: 250px;
фонового цвета: светло-серого;
}

Попробуйте »

Следующий пример демонстрирует baseline использование:

примеров

.flex-контейнер {
дисплей: -webkit-флекс;
Дисплей: Flex;
-webkit-ALIGN-элементы: базовые;
выравнивать-элементы: базовый уровень;
ширина: 400px;
высота: 250px;
фонового цвета: светло-серого;
}

Попробуйте »

флекс-обертка недвижимость

АтрибутFlex-обертка используется для указания коробки ребенка режим упругий элемент обертку.

грамматика

flex-flow:  || 

Каждый стоимостной анализ:

  • Nowrap - По умолчанию, эластичный контейнер в виде одной линии.В этом случае упругий ребенок может переполнить контейнер.
  • оберните - эластичная емкость несколько строк.Переполнение часть упругого ребенка помещается в этом случае к новой линии, внутренний разрыв строки будет происходить раздел
  • наматывается обратный - обратный порядок обруча.

Следующий пример демонстрирует nowrap использование:

примеров

.flex-контейнер {
дисплей: -webkit-флекс;
Дисплей: Flex;
-webkit-флекс-пленка: Nowrap;
флекс-пленка: Nowrap;
ширина: 300px;
высота: 250px;
фонового цвета: светло-серого;
}

Попробуйте »

Следующий пример демонстрирует wrap использования:

примеров

.flex-контейнер {
дисплей: -webkit-флекс;
Дисплей: Flex;
-webkit-флекс-компресс: обернуть;
Flex-обертку: завернуть;
ширина: 300px;
высота: 250px;
фонового цвета: светло-серого;
}

Попробуйте »

Следующий пример демонстрирует wrap-reverse использование:

примеров

.flex-контейнер {
дисплей: -webkit-флекс;
Дисплей: Flex;
-webkit-флекс-пленка: наматывается обратный;
флекс-пленка: оберните перемотать;
ширина: 300px;
высота: 250px;
фонового цвета: светло-серого;
}

Попробуйте »

Атрибут ALIGN-контента

align-content атрибут используется для изменения flex-wrap поведение атрибута. Подобные align-items , но это не установлено выравнивание эластичных субэлементов, но установить выравнивание каждой строки.

грамматика

align-content: flex-start | flex-end | center | space-between | space-around | stretch

Каждый стоимостной анализ:

  • stretch - по умолчанию. Каждая линия будет растягиваться, чтобы занять оставшееся пространство.
  • flex-start - ряды сложенных коробок в исходное положение эластичного контейнера.
  • flex-end - ряды сложенных коробок до конечного положения эластичного контейнера.
  • center - ряды штабелированных коробок в среднее положение эластичного контейнера.
  • space-between - каждая строка гибкого контейнера мешок распределяется равномерно.
  • space-around - каждая строка гибкого контейнера мешок равномерно распределяется между двумя концами , чтобы сохранить половину суб-элементов и подэлементов женных с шагом размер.

Следующий пример демонстрирует center обработки использования Коллекция :

примеров

.flex-контейнер {
дисплей: -webkit-флекс;
Дисплей: Flex;
-webkit-флекс-компресс: обернуть;
Flex-обертку: завернуть;
-webkit-Align-контента: центр;
выравнивать-контента: центр;
ширина: 300px;
высота: 300px;
фонового цвета: светло-серого;
}

Попробуйте »

Гибкие атрибуты подэлемент

последовательность

грамматика

order: 

Каждый стоимостной анализ:

  • <Integer>: целое значение, используемое для определения порядка, в котором малая величина верхней поверхности. Это может быть отрицательным.

order , чтобы установить свойства в пределах упругих свойств эластичных контейнеров дочерних элементов:

примеров

.flex-элемент {
цвет фона: CornflowerBlue;
ширина: 100px;
высота: 100px;
Запас: 10px;
}

.first {
-webkit порядка: -1;
Последовательность: -1;
}

Попробуйте »

выравнивать

Настройки "запас" является "авто" значение, автоматически получить эластичную емкость в оставшемся пространстве. Таким образом, установить значение вертикального маржа "авто", это позволяет упругие подэлементы полностью сосредоточены на направлении двухосного упругого контейнера.

Следующие примеры находятся на первом суб-упругий элемент , установленный margin-right: auto; . Оставшееся пространство будет помещен в нужных элементов:

примеров

.flex-элемент {
цвет фона: CornflowerBlue;
ширина: 75px;
высота: 75px;
Запас: 10px;
}

.flex-вещь: первый ребенок {
Маржа правом: авто;
}

Попробуйте »

Идеальный центр

Следующие примеры будут идеальным решением проблем, которые мы обычно сталкиваемся центр.

Упругие коробка, центр становится очень просто, просто хочу , чтобы установить margin: auto; может сделать упругие подэлементы в осевом направлении на двух совершенно по центру:

примеров

.flex-элемент {
цвет фона: CornflowerBlue;
ширина: 75px;
высота: 75px;
Запас: авто;
}

Попробуйте »

выравнивать-я

align-self атрибут используется для установки направления выравнивания самого упругого элемента на стороне оси ( по вертикальной оси).

грамматика

align-self: auto | flex-start | flex-end | center | baseline | stretch

Каждый стоимостной анализ:

  • Авто: Если "выравнивать-я" значение "Авто", расчетное значение родительского элемента элемента 'ALIGN-предметов', если он не имеет родителя, рассчитанное значение "растягиваться".
  • Flex-старт: граница сторона коробки элемента упругой оси (вертикальная ось) по отношению к начальной позиции оси живой стороне границы стартовой линии.
  • флекс конец: упругая граница стороны оси блока элемента (вертикальная ось) по отношению к исходной позиции, чтобы жить конец вала на стороне линии границы.
  • центр: элемент коробки упругая помещен в середине оси со стороны линии (вертикальная ось) на. (Если размер меньше, чем размер упругой линии гнездового элемента, то есть такой же длины в обоих переливом направлениях).
  • Исходные данные: коробка элементы, такие как упругое внутреннего вала и линии вала со стороны одно и то же, значение эквивалента "флекс-старт". В других случаях значение будет участвовать в базовой линии выравнивания.
  • растягивать: Если размер атрибута Маржа коробки определяет размер стороны вала 'авто', его значение будет близко к позициям, как размер, но будет следовать свойство 'мин / макс-ширина / высота' ограничения.

Следующий пример демонстрирует упругие подэлементы выравнивать автопортрета эффект применения различных значений:

примеров

.flex-элемент {
цвет фона: CornflowerBlue;
ширина: 60px;
мин-высота: 100px;
Запас: 10px;
}

.item1 {
-webkit-Align-я: Flex-старт;
выравнивать-себя: Flex-старт;
}
.item2 {
-webkit-Align-я: Flex-конец;
выравнивать-я: Flex-конец;
}

.item3 {
-webkit-Align-я: центр;
выравнивать-себя: центр;
}

.item4 {
-webkit-Align-я: базовый уровень;
выравнивать-себя: базовый уровень;
}

.item5 {
-webkit-Align-я: растягивать;
выравнивать автопортрета: растягивать;
}

Попробуйте »

сгибать

flex атрибут используется , чтобы указать способ выделить пространство для эластичных субэлементов.

грамматика

flex:none | [ flex-grow ] || [ flex-shrink ] || [ flex-basis ]

Каждый стоимостной анализ:

  • нет: ни один высчитывает Ключевое слово: 0 0 авто
  • [Flex вырастали]: определение коэффициента расширения упругого элемента коробки.
  • [Flex термоусадочные]: определение коэффициента усадки упругого элемента коробки.
  • [Flex-основа]: Ссылка по умолчанию значение определяет упругий элемент коробки.

В следующем примере, первый суб-упругий элемент занимает 2/4 пространства, а два других друг 1/4 Площадь:

примеров

.flex-элемент {
цвет фона: CornflowerBlue;
Запас: 10px;
}

.item1 {
-webkit-флекс: 2;
сгибать: 2;
}

.item2 {
-webkit-флекс: 1;
сгибать: 1;
}

.item3 {
-webkit-флекс: 1;
сгибать: 1;
}

Попробуйте »

примеров

Другие примеры

Создание гибкой страницы с помощью эластичного коробку


CSS3 Гибкая окно Свойства

В следующей таблице перечислены часто используемые в поле упругих свойств:

свойство описание
дисплей Указывает тип элемента окна HTML.
Flex-направление Укажите, как расположить элементы нейтронного упругого контейнера
обосновывать-контент Упругий элемент в коробке шпинделя (по горизонтали) направлении выравнивания.
ALIGN-элементы Упругий элемент по оси боковых коробки (по вертикальной оси) направление ориентации.
флекс-пленка Является ли упругим обертка коробки подэлементам за пределы родительского контейнера.
выравнивать-контент Изменить поведение флекс-виткам собственности, аналогичные выравнивать-элементы, но не установлены подэлементов выровнены, но выравнивание множества линий
Flex-поток Flex-направление и Flex-обертка стенографии
заказ Дочерний элемент порядка упругая коробка.
выравнивать-я Используйте упругие дочерние элементы. Накройте контейнер ALIGN-объектов имущества.
сгибать Как настроить упругом ящик дочерний элемент распределенного пространства.