Justify content css: justify-content | CSS (ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹)

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅

CSS justify content



ΠŸΡ€ΠΈΠΌΠ΅Ρ€

БовмСститС элСмСнты Flex Π² Ρ†Π΅Π½Ρ‚Ρ€Π΅ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°:

div {
Β Β Β  display: flex;
Β Β Β  justify-content: center;
}

ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ Π½ΠΈΠΆΠ΅.


ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΈ использованиС

Бвойство justify-content Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π΅Ρ‚ элСмСнты Π³ΠΈΠ±ΠΊΠΎΠ³ΠΎ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°, ΠΊΠΎΠ³Π΄Π° элСмСнты Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ всС доступноС пространство Π½Π° Π³Π»Π°Π²Π½ΠΎΠΉ оси (Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½ΠΎ).

Π‘ΠΎΠ²Π΅Ρ‚: Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ свойство Π’Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅-элСмСнты для выравнивания элСмСнтов ΠΏΠΎ Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΠΈ.

Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ:flex-start
Inherited:no
Animatable:no. Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ ΠΎ animatable
Version:CSS3
Бинтаксис JavaScript: object.style.justifyContent=»space-between»

ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°

НомСра Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ ΠΏΠ΅Ρ€Π²ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°, которая ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ свойство.

НомСра followed by -webkit- or -moz- Π£ΠΊΠ°ΠΆΠ°Ρ‚ ΠΏΠ΅Ρ€Π²ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ, которая Ρ€Π°Π±ΠΎΡ‚Π°Π»Π° с прСфиксом.

Бвойство
justify-content29.0
21.0Β -webkit-
11.028.0
18.0Β -moz-
9.0
6.1Β -webkit-
17.0


Бинтаксис CSS

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

ЗначСния свойств

Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠžΠΏΠΈΡΠ°Π½ΠΈΠ΅
flex-startΠ—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ. Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ Ρ€Π°Π·ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½Ρ‹ Π² Π½Π°Ρ‡Π°Π»Π΅ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°
flex-endΠ­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ Ρ€Π°Π·ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½Ρ‹ Π² ΠΊΠΎΠ½Ρ†Π΅ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°
centerΠ­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ Ρ€Π°Π·ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½Ρ‹ Π² Ρ†Π΅Π½Ρ‚Ρ€Π΅ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°
space-betweenΠ­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ Ρ€Π°ΡΠΏΠΎΠ»Π°Π³Π°ΡŽΡ‚ΡΡ Π² ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΊΠ΅ ΠΌΠ΅ΠΆΠ΄Ρƒ линиями
space-aroundΠ­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ Ρ€Π°ΡΠΏΠΎΠ»Π°Π³Π°ΡŽΡ‚ΡΡ с ΠΏΡ€ΠΎΠ±Π΅Π»Π°ΠΌΠΈ Π΄ΠΎ, ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΈ послС Π»ΠΈΠ½ΠΈΠΉ
initialΠŸΡ€ΠΈΡΠ²Π°ΠΈΠ²Π°Π΅Ρ‚ этому свойству Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ. (Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ ΠΎ initial)
inheritНаслСдуСт это свойство ΠΈΠ· Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ элСмСнта. (Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ ΠΎ inherit)

Π”Ρ€ΡƒΠ³ΠΈΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹

ΠŸΡ€ΠΈΠΌΠ΅Ρ€

Π’Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅ элСмСнтов Flex Π² Π½Π°Ρ‡Π°Π»Π΅ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° (ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ):

div {
Β Β Β  display: flex;
Β Β Β  justify-content: flex-start;
}

ΠŸΡ€ΠΈΠΌΠ΅Ρ€

БовмСститС элСмСнты Flex Π² ΠΊΠΎΠ½Ρ†Π΅ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°:

div {
Β Β Β  display: flex;
Β Β Β  justify-content: flex-end;
}

ΠŸΡ€ΠΈΠΌΠ΅Ρ€

ΠžΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ элСмСнтов Flex с ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π»ΠΎΠΌ ΠΌΠ΅ΠΆΠ΄Ρƒ линиями:

div {
Β Β Β  display: flex;
Β Β Β  justify-content: space-between;

}

ΠŸΡ€ΠΈΠΌΠ΅Ρ€

ΠžΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ элСмСнтов Flex с ΠΏΡ€ΠΎΠ±Π΅Π»Π°ΠΌΠΈ Π΄ΠΎ, ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΈ послС строк:

div {
Β Β Β  display: flex;
Β Β Β  justify-content: space-around;
}


ΠŸΠΎΡ…ΠΎΠΆΠΈΠ΅ страницы

CSS Π‘ΠΏΡ€Π°Π²ΠΊΠ°: align-content Бвойство

CSS Π‘ΠΏΡ€Π°Π²ΠΊΠ°: align-items Бвойство

CSS Π‘ΠΏΡ€Π°Π²ΠΊΠ°: align-self Бвойство

HTML DOM Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊ: justifyContent Бвойство


justify-content | Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊ CSS | schoolsw3. com


ΠŸΡ€ΠΈΠΌΠ΅Ρ€

Π’Ρ‹Ρ€ΠΎΠ²Π½ΠΈΡ‚ΡŒ Π³ΠΈΠ±ΠΊΠΈΠ΅ элСмСнты ΠΏΠΎ Ρ†Π΅Π½Ρ‚Ρ€Ρƒ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°:

div {
Β Β Β  display: flex;
Β Β Β  justify-content: center;
}

Π Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ ΠΊΠΎΠ΄Π° Β»

ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΈ использованиС

Бвойство justify-content Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π΅Ρ‚ элСмСнты Π³ΠΈΠ±ΠΊΠΎΠ³ΠΎ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°, ΠΊΠΎΠ³Π΄Π° элСмСнты Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ всС доступноС пространство Π½Π° Π³Π»Π°Π²Π½ΠΎΠΉ оси (ΠΏΠΎ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΠΈ).

Π‘ΠΎΠ²Π΅Ρ‚: Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ свойство align-items Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Ρ‚ΡŒ элСмСнты ΠΏΠΎ Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΠΈ.


ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ΠΎΠ²

Числа Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ ΠΏΠ΅Ρ€Π²ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°, которая ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ свойство.

Числа, Π·Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ слСдуСт -webkit- ΠΈΠ»ΠΈ -moz- ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ ΠΏΠ΅Ρ€Π²ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ, которая Ρ€Π°Π±ΠΎΡ‚Π°Π»Π° с прСфиксом.

Бвойство
justify-content29.0
21.0Β -webkit-
11.028.0
18. 0Β -moz-
9.0
6.1Β -webkit-
17.0


CSS Бинтаксис

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

Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ свойств


ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹

ΠŸΡ€ΠΈΠΌΠ΅Ρ€

Π’Ρ‹Ρ€ΠΎΠ²Π½ΠΈΡ‚ΡŒ Π³ΠΈΠ±ΠΊΠΈΠ΅ элСмСнты Π² Π½Π°Ρ‡Π°Π»Π΅ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° (это Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ):

div {
Β Β Β  display: flex;
Β Β Β  justify-content: flex-start;
}

Π Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ ΠΊΠΎΠ΄Π° Β»

ΠŸΡ€ΠΈΠΌΠ΅Ρ€

ВыровняйтС Π³ΠΈΠ±ΠΊΠΈΠ΅ элСмСнты Π² ΠΊΠΎΠ½Ρ†Π΅ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°:

div {
Β Β Β  display: flex;
Β Β Β  justify-content: flex-end;

}

Π Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ ΠΊΠΎΠ΄Π° Β»

ΠŸΡ€ΠΈΠΌΠ΅Ρ€

ΠžΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π³ΠΈΠ±ΠΊΠΈΡ… элСмСнтов с ΠΏΡ€ΠΎΠ±Π΅Π»ΠΎΠΌ ΠΌΠ΅ΠΆΠ΄Ρƒ строками:

div {
Β Β Β  display: flex;
Β Β Β  justify-content: space-between;
}

Π Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ ΠΊΠΎΠ΄Π° Β»

ΠŸΡ€ΠΈΠΌΠ΅Ρ€

ΠžΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π³ΠΈΠ±ΠΊΠΈΡ… элСмСнтов с ΠΏΡ€ΠΎΠ±Π΅Π»Π°ΠΌΠΈ Π΄ΠΎ, ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΈ послС строк:

div {
Β Β Β  display: flex;
Β Β Β  justify-content: space-around;
}

Π Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ ΠΊΠΎΠ΄Π° Β»

БвязанныС страницы

CSS Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊ: Бвойство align-content

CSS Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊ: Бвойство align-items

CSS Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊ: Бвойство align-self

HTML DOM Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊ: Бвойство justifyContent


наглядноС Π²Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² систСму ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠΈ элСмСнтов Π½Π° Π²Π΅Π±-страницС

CSS Flexbox β€” это тСхнология для создания слоТных Π³ΠΈΠ±ΠΊΠΈΡ… ΠΌΠ°ΠΊΠ΅Ρ‚ΠΎΠ² Π·Π° счёт ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ размСщСния элСмСнтов Π½Π° страницС. О самой Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ ΠΏΠΈΡˆΡƒΡ‚ здСсь. ΠœΡ‹ ΠΆΠ΅ Ρ€Π΅ΡˆΠΈΠ»ΠΈ ΠΎΠ±ΡŠΡΡΠ½ΠΈΡ‚ΡŒ возмоТности CSS Flexbox с использованиСм Π³ΠΈΡ„ΠΎΠΊ.

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅ Π’Ρ‹ Ρ‡ΠΈΡ‚Π°Π΅Ρ‚Π΅ ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½Π½ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ Π½Π΅ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ΠΏΡƒΡ‰Π΅Π½Π½ΠΎΠΉ Π½Π°ΠΌΠΈ ΡΡ‚Π°Ρ‚ΡŒΠΈ.

1

display: flex

Π•ΡΡ‚ΡŒ страница:

На Π½Π΅ΠΉ Ρ€Π°Π·ΠΌΠ΅Ρ‰Π΅Π½ΠΎ 4 div Ρ€Π°Π·Π½Ρ‹Ρ… Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ находятся Π²Π½ΡƒΡ‚Ρ€ΠΈ сСрого div. Π£ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ div Π΅ΡΡ‚ΡŒ свойство display: block. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Π±Π»ΠΎΠΊ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ всю ΡˆΠΈΡ€ΠΈΠ½Ρƒ строки. Π§Ρ‚ΠΎΠ±Ρ‹ Π½Π°Ρ‡Π°Ρ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с CSS Flexbox, Π½ΡƒΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ flex-ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΎΠΌ. ДСлаСтся это Ρ‚Π°ΠΊ:

#container {
  display: flex;
}

Π’Π°ΠΊ Ρƒ Π±Π»ΠΎΠΊΠΎΠ² появилось свойство flex-контСкст, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π² дальнСйшСм ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ ΠΈΠΌΠΈ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ Π³ΠΎΡ€Π°Π·Π΄ΠΎ ΠΏΡ€ΠΎΡ‰Π΅, Ρ‡Π΅ΠΌ с использованиСм стандартного CSS.

2

flex-direction

Π£ flex-ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° Π΅ΡΡ‚ΡŒ Π΄Π²Π΅ оси: главная ΠΈ пСрпСндикулярная Π΅ΠΉ.

По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ всС ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚Ρ‹ Ρ€Π°ΡΠΏΠΎΠ»Π°Π³Π°ΡŽΡ‚ΡΡ вдоль Π³Π»Π°Π²Π½ΠΎΠΉ оси β€” слСва Π½Π°ΠΏΡ€Π°Π²ΠΎ. ИмСнно поэтому Π±Π»ΠΎΠΊΠΈ Π² ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π²Ρ‹ΡΡ‚Ρ€ΠΎΠΈΠ»ΠΈΡΡŒ Π² линию, ΠΊΠΎΠ³Π΄Π° ΠΌΡ‹ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΠ»ΠΈ display: flex.

А Π²ΠΎΡ‚ flex-direction позволяСт Π²Ρ€Π°Ρ‰Π°Ρ‚ΡŒ Π³Π»Π°Π²Π½ΡƒΡŽ ось.

#container {
  display: flex;
  flex-direction: column;
}

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ flex-direction: column Π½Π΅ Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π΅Ρ‚ Π±Π»ΠΎΠΊΠΈ ΠΏΠΎ оси, пСрпСндикулярной Π³Π»Π°Π²Π½ΠΎΠΉ. Главная ось сама мСняСт своё располоТСниС, ΠΈ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½Π° свСрху Π²Π½ΠΈΠ·.

Π•ΡΡ‚ΡŒ Π΅Ρ‰Ρ‘ ΠΏΠ°Ρ€ΠΎΡ‡ΠΊΠ° свойств для flex-direction: row-reverse ΠΈ column-reverse.

3

justify-content

ΠžΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚ Π·Π° Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅ элСмСнтов ΠΏΠΎ Π³Π»Π°Π²Π½ΠΎΠΉ оси:

#container {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
}

Justify-content ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ 5Β Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ:

  1. flex-start
  2. flex-end
  3. center
  4. space-between
  5. space-around

Space-between

Π·Π°Π΄Π°Ρ‘Ρ‚ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎΠ΅ расстояниС ΠΌΠ΅ΠΆΠ΄Ρƒ Π±Π»ΠΎΠΊΠ°ΠΌΠΈ, Π½ΠΎ Π½Π΅ ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΎΠΌ ΠΈ Π±Π»ΠΎΠΊΠ°ΠΌΠΈ. Space-around Ρ‚Π°ΠΊΠΆΠ΅ Π·Π°Π΄Π°Ρ‘Ρ‚ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎΠ΅ расстояниС ΠΌΠ΅ΠΆΠ΄Ρƒ Π±Π»ΠΎΠΊΠ°ΠΌΠΈ, Π½ΠΎ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ расстояниС ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΎΠΌ ΠΈ Π±Π»ΠΎΠΊΠ°ΠΌΠΈ Ρ€Π°Π²Π½ΠΎ ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½Π΅ расстояния ΠΌΠ΅ΠΆΠ΄Ρƒ Π±Π»ΠΎΠΊΠ°ΠΌΠΈ.

4

align-items

Если justify-content Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ с главной осью, Ρ‚ΠΎ align-items Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ с осью, пСрпСндикулярной Π³Π»Π°Π²Π½ΠΎΠΉ оси. ВСрнёмся ΠΊ flex-direction: row ΠΈ пройдёмся ΠΏΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌ align-items:

  1. flex-start
  2. flex-end
  3. center
  4. stretch
  5. baseline

Π‘Ρ‚ΠΎΠΈΡ‚ Π·Π°ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ для align-items: stretch высота Π±Π»ΠΎΠΊΠΎΠ² Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ Ρ€Π°Π²Π½Π° auto. Для align-items: baseline Ρ‚Π΅Π³ΠΈ ΠΏΠ°Ρ€Π°Π³Ρ€Π°Ρ„Π° ΡƒΠ±ΠΈΡ€Π°Ρ‚ΡŒ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ, ΠΈΠ½Π°Ρ‡Π΅ получится Ρ‚Π°ΠΊ:

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΡˆΠ΅ Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ Π² Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ оси, объСдиним justify-content с align-items и посмотрим, ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎΒ Ρ†Π΅Π½Ρ‚Ρ€Ρƒ для Π΄Π²ΡƒΡ… свойств flex-direction:

5

align-self

ΠŸΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ‚ Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Ρ‚ΡŒ элСмСнты ΠΏΠΎ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ:

#container {
  align-items: flex-start;
}
. square#one {
  align-self: center;
}
// Only this square will be centered.

Для Π΄Π²ΡƒΡ… Π±Π»ΠΎΠΊΠΎΠ² ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΠΌ align-self, Π° для ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Ρ… β€” align-items: center ΠΈ flex-direction: row.

6

flex-basis

ΠžΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚ Π·Π° ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π°Π·ΠΌΠ΅Ρ€ элСмСнтов Π΄ΠΎ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ Π±ΡƒΠ΄ΡƒΡ‚ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Ρ‹ Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ свойствами CSS Flexbox:

flex-basis влияСт Π½Π° Ρ€Π°Π·ΠΌΠ΅Ρ€ элСмСнтов вдоль Π³Π»Π°Π²Π½ΠΎΠΉ оси. Π”Π°Π²Π°ΠΉΡ‚Π΅ посмотрим, Ρ‡Ρ‚ΠΎ случится, Ссли ΠΌΡ‹Β ΠΈΠ·ΠΌΠ΅Π½ΠΈΠΌ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π³Π»Π°Π²Π½ΠΎΠΉ оси:

Π—Π°ΠΌΠ΅Ρ‚ΡŒΡ‚Π΅, Ρ‡Ρ‚ΠΎ Π½Π°ΠΌ ΠΏΡ€ΠΈΡˆΠ»ΠΎΡΡŒ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΈ высоту элСмСнтов: flex-basis ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ ΠΊΠ°ΠΊ высоту элСмСнтов, Ρ‚Π°ΠΊ ΠΈΒ ΠΈΡ…Β ΡˆΠΈΡ€ΠΈΠ½Ρƒ в зависимости от направлСния оси.

7

flex-grow

Π­Ρ‚ΠΎ свойство Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ слоТнСС. Для Π½Π°Ρ‡Π°Π»Π° Π·Π°Π΄Π°Π΄ΠΈΠΌ Π±Π»ΠΎΠΊΠ°ΠΌ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡƒΡŽ ΡˆΠΈΡ€ΠΈΠ½Ρƒ Π² 120px:

ΠŸΠΎΒ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ flex-grow Ρ€Π°Π²Π½ΠΎ 0. Π­Ρ‚ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚, Ρ‡Ρ‚ΠΎ Π±Π»ΠΎΠΊΠ°ΠΌ Π·Π°ΠΏΡ€Π΅Ρ‰Π΅Π½ΠΎ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°Ρ‚ΡŒΡΡ Π² Ρ€Π°Π·ΠΌΠ΅Ρ€Π°Ρ…. Π—Π°Π΄Π°Π΄ΠΈΠΌ flex-grow Ρ€Π°Π²Π½Ρ‹ΠΌ 1 для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π±Π»ΠΎΠΊΠ°:

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π±Π»ΠΎΠΊΠΈ заняли ΠΎΡΡ‚Π°Π²ΡˆΠ΅Π΅ΡΡ мСсто Π² ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π΅. Но Ρ‡Ρ‚ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚ flex-grow: 1? ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ flex-grow Ρ€Π°Π²Π½Ρ‹ΠΌ 999:

Π˜β€¦ Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅Β ΠΏΡ€ΠΎΠΈΠ·ΠΎΡˆΠ»ΠΎ. Π’Π°ΠΊ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΎΡΡŒ ΠΈΠ·-Π·Π° Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ flex-grow ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ Π½Π΅ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½Ρ‹Π΅ значСния, Π° ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅. Π­Ρ‚ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚, Ρ‡Ρ‚ΠΎ Π½Π΅Β Π²Π°ΠΆΠ½ΠΎ, ΠΊΠ°ΠΊΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρƒ

flex-grow, Π²Π°ΠΆΠ½ΠΎ, ΠΊΠ°ΠΊΠΎΠ΅ ΠΎΠ½ΠΎ ΠΏΠΎ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡŽ ΠΊ Π΄Ρ€ΡƒΠ³ΠΈΠΌ Π±Π»ΠΎΠΊΠ°ΠΌ:

Π’Π½Π°Ρ‡Π°Π»Π΅ flex-grow ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π±Π»ΠΎΠΊΠ° Ρ€Π°Π²Π΅Π½ 1, Π² суммС получится 6. Π—Π½Π°Ρ‡ΠΈΡ‚, наш ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ Ρ€Π°Π·Π΄Π΅Π»Ρ‘Π½ Π½Π° 6 частСй. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ Π±Π»ΠΎΠΊ Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°Π½ΠΈΠΌΠ°Ρ‚ΡŒ 1/6 Ρ‡Π°ΡΡ‚ΡŒ доступного пространства Π² ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π΅. Когда flex-grow Ρ‚Ρ€Π΅Ρ‚ΡŒΠ΅Π³ΠΎ Π±Π»ΠΎΠΊΠ° становится Ρ€Π°Π²Π½Ρ‹ΠΌ 2, ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ дСлится Π½Π° 7 частСй: 1 + 1 + 2 + 1 + 1 + 1. Π’Π΅ΠΏΠ΅Ρ€ΡŒ Ρ‚Ρ€Π΅Ρ‚ΠΈΠΉ Π±Π»ΠΎΠΊ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ 2/7 пространства, ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ β€” ΠΏΠΎ 1/7. Π˜Β Ρ‚Π°ΠΊ Π΄Π°Π»Π΅Π΅.

flex-grow Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для Π³Π»Π°Π²Π½ΠΎΠΉ оси, ΠΏΠΎΠΊΠ° ΠΌΡ‹ Π½Π΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠΌ Π΅Ρ‘ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅.

8

flex-shrink

ΠŸΡ€ΡΠΌΠ°Ρ ΠΏΡ€ΠΎΡ‚ΠΈΠ²ΠΎΠΏΠΎΠ»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ flex-grow. ΠžΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅Ρ‚, насколько Π±Π»ΠΎΠΊΡƒ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠΌΠ΅Π½ΡŒΡˆΠΈΡ‚ΡŒΡΡ Π² Ρ€Π°Π·ΠΌΠ΅Ρ€Π΅. flex-shrink ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ, ΠΊΠΎΠ³Π΄Π° элСмСнты Π½Π΅ Π²ΠΌΠ΅Ρ‰Π°ΡŽΡ‚ΡΡ Π² ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€. Вы опрСдСляСтС, ΠΊΠ°ΠΊΠΈΠ΅ элСмСнты Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡƒΠΌΠ΅Π½ΡŒΡˆΠΈΡ‚ΡŒΡΡ Π²Β Ρ€Π°Π·ΠΌΠ΅Ρ€Π°Ρ…, Π°Β ΠΊΠ°ΠΊΠΈΠ΅Β β€” Π½Π΅Ρ‚. ΠŸΠΎΒ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ flex-shrink для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π±Π»ΠΎΠΊΠ° Ρ€Π°Π²Π½ΠΎ 1. Π­Ρ‚ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚, Ρ‡Ρ‚ΠΎ Π±Π»ΠΎΠΊΠΈ Π±ΡƒΠ΄ΡƒΡ‚ ΡΠΆΠΈΠΌΠ°Ρ‚ΡŒΡΡ, ΠΊΠΎΠ³Π΄Π° ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠΌΠ΅Π½ΡŒΡˆΠ°Ρ‚ΡŒΡΡ.

Π—Π°Π΄Π°Π΄ΠΈΠΌ flex-grow ΠΈ flex-shrink Ρ€Π°Π²Π½Ρ‹ΠΌΠΈ 1:

Π’Π΅ΠΏΠ΅Ρ€ΡŒ помСняСм Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ flex-shrink для Ρ‚Ρ€Π΅Ρ‚ΡŒΠ΅Π³ΠΎ Π±Π»ΠΎΠΊΠ° Π½Π° 0. Π•ΠΌΡƒ Π·Π°ΠΏΡ€Π΅Ρ‚ΠΈΠ»ΠΈ ΡΠΆΠΈΠΌΠ°Ρ‚ΡŒΡΡ, поэтому Π΅Π³ΠΎ ΡˆΠΈΡ€ΠΈΠ½Π° останСтся Ρ€Π°Π²Π½ΠΎΠΉ 120px:

flex-shrink основываСтся Π½Π° пропорциях. Π’ΠΎ Π΅ΡΡ‚ΡŒ, Ссли Ρƒ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ Π±Π»ΠΎΠΊΠ° flex-shrink Ρ€Π°Π²Π΅Π½ 6, Π° Ρƒ ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΎΠ½ Ρ€Π°Π²Π΅Π½ 2, Ρ‚ΠΎ, это Π·Π½Π°Ρ‡ΠΈΡ‚, Ρ‡Ρ‚ΠΎ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ Π±Π»ΠΎΠΊ Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΆΠΈΠΌΠ°Ρ‚ΡŒΡΡ Π² Ρ‚Ρ€ΠΈ Ρ€Π°Π·Π° быстрСС, Ρ‡Π΅ΠΌ ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅.

9

flex

ЗамСняСт flex-grow, flex-shrink ΠΈ flex-basis. ЗначСния ΠΏΠΎΒ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ: 0 (grow) 1 (shrink) auto (basis).

Π‘ΠΎΠ·Π΄Π°Π΄ΠΈΠΌ Π΄Π²Π° Π±Π»ΠΎΠΊΠ°:

.square#one {
  flex: 2 1 300px;
}
.square#two {
  flex: 1 2 300px;
}

Π£ ΠΎΠ±ΠΎΠΈΡ… ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹ΠΉ flex-basis. Π­Ρ‚ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚, Ρ‡Ρ‚ΠΎ ΠΎΠ±Π° Π±ΡƒΠ΄ΡƒΡ‚ ΡˆΠΈΡ€ΠΈΠ½ΠΎΠΉ Π² 300px (ΡˆΠΈΡ€ΠΈΠ½Π° ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°: 600px плюс margin ΠΈ padding). Но ΠΊΠΎΠ³Π΄Π° ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ Π½Π°Ρ‡Π½Π΅Ρ‚ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°Ρ‚ΡŒΡΡ Π² Ρ€Π°Π·ΠΌΠ΅Ρ€Π°Ρ…, ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ Π±Π»ΠΎΠΊ (с большим flex-grow) Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°Ρ‚ΡŒΡΡ Π² Π΄Π²Π° Ρ€Π°Π·Π° быстрСС, Π° Π²Ρ‚ΠΎΡ€ΠΎΠΉ Π±Π»ΠΎΠΊ (с наибольшим flex-shrink) Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΆΠΈΠΌΠ°Ρ‚ΡŒΡΡ Π² Π΄Π²Π° Ρ€Π°Π·Π° быстрСС:

Π•Ρ‰Ρ‘ большС возмоТностСй свойства Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°ΠΉΡ‚ΠΈ Π² Π°Π½ΠΈΠΌΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΌ руководствС ΠΏΠΎ CSS flex​.

10

Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ

Как с CSS Flexbox мСняСтся Ρ€Π°Π·ΠΌΠ΅Ρ€?

Когда увСличиваСтся ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ Π±Π»ΠΎΠΊ, ΠΎΠ½ Π½Π΅ становится Π² Π΄Π²Π° Ρ€Π°Π·Π° большС Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ, ΠΈ ΠΊΠΎΠ³Π΄Π° ΡƒΠΌΠ΅Π½ΡŒΡˆΠ°Π΅Ρ‚ΡΡ Π²Ρ‚ΠΎΡ€ΠΎΠΉ, ΠΎΠ½ Ρ‚Π°ΠΊΠΆΠ΅ Π½Π΅ становится Π² Π΄Π²Π° Ρ€Π°Π·Π° мСньшС ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ. Π­Ρ‚ΠΎ происходит ΠΈΠ·-Π·Π° Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ flex-grow ΠΈ flex-shrink ΠΎΡ‚Π²Π΅Ρ‡Π°ΡŽΡ‚ Π·Π°Β Ρ‚Π΅ΠΌΠΏ роста и сокращСния.

НСмного ΠΌΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΠΊΠΈ

ΠΠ°Ρ‡Π°Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°: 640px. Π’Ρ‹Ρ‡Ρ‚Π΅ΠΌ ΠΏΠΎΒ 20px с каТдой стороны для padding, ΠΈ Ρƒ нас останСтся 600px для Π΄Π²ΡƒΡ… Π±Π»ΠΎΠΊΠΎΠ². Когда ΡˆΠΈΡ€ΠΈΠ½Π° ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° становится Ρ€Π°Π²Π½ΠΎΠΉ 430px (потСря Π² 210px), ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ Π±Π»ΠΎΠΊ (flex-shrink: 1) тСряСт 70px. Π’Ρ‚ΠΎΡ€ΠΎΠΉ Π±Π»ΠΎΠΊ (flex-shrink: 2) тСряСт 140px. Когда ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ сТимаСтся Π΄ΠΎ 340px, ΠΌΡ‹ тСряСм 300px. ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ Π±Π»ΠΎΠΊ тСряСт 100px, Π²Ρ‚ΠΎΡ€ΠΎΠΉ β€” 200px. Π’ΠΎ ΠΆΠ΅ самоС происходит ΠΈ с flex-grow.

Если Π²Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΠ½Ρ‚Π΅Ρ€Π΅ΡΡƒΠ΅Ρ‚Π΅ΡΡŒ CSS Grid, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚ΡŒΡΡ с нашСй ΡΡ‚Π°Ρ‚ΡŒΡ‘ΠΉ, Π³Π΄Π΅ ΠΌΡ‹ рассматриваСм Flexbox ΠΈ Grid.

​

ΠŸΠ΅Ρ€Π΅Π²ΠΎΠ΄ ΡΡ‚Π°Ρ‚ΡŒΠΈ Β«How Flexbox worksβ€Šβ€”β€Šexplained with big, colorful, animated gifsΒ»

CSS свойство justify-content

Бвойство justify-content Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π΅Ρ‚ элСмСнты, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ΠΈ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ всС доступноС пространство ΠΏΠΎ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΠΈ. Оно являСтся подсвойством модуля ΠΌΠ°ΠΊΠ΅Ρ‚ Π³ΠΈΠ±ΠΊΠΎΠ³ΠΎ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°. Бвойство ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΡƒΠ΅Ρ‚ Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅ элСмСнтов, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ΠΈ выходят Π·Π° Π³Ρ€Π°Π½ΠΈΡ†Ρ‹.

Бвойство justify-content Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ использовано вмСстС со свойством display, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΈΠΌΠ΅Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ «flex». Для Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ выравнивания элСмСнтов Π½ΡƒΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ свойство align-items.
Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽflex-start
ΠŸΡ€ΠΈΠΌΠ΅Π½ΡΠ΅Ρ‚ΡΡΠš флСкс-ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°ΠΌ
НаслСдуСтсяНСт
АнимируСмоСНСт
ВСрсияCSS3
DOM синтаксисobject. style.justifyContent = «center»;

Бинтаксис¢

Justify-content: flex-start | flex-end | center | space-between | space-around | initial | inherit;

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ΒΆ

<!DOCTYPE html>
<html>
  <head>
    <title>Π—Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°</title>
    <style> 
      .center {
      width: 400px;
      height: 150px;
      border: 1px solid #666;
      display: -webkit-flex; /* Safari */
      -webkit-justify-content: center; /* Safari 6.1+ */
      display: flex;
      justify-content: center;
      }
      .center div {
      width: 70px;
      height: 70px;
      background-color: #ccc;
      border: 1px solid #666;
      }
    </style>
  </head>
  <body>
    <h3>ΠŸΡ€ΠΈΠΌΠ΅Ρ€ свойства justify-content</h3>
    <p>УстановлСно свойство "justify-content: center":</p>
    <div>
      <div>1</div>
      <div>2</div>
      <div>3</div>
    </div>
  </body>
</html>
ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ сами!

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ со Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ «flex-start»:

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ΒΆ

<!DOCTYPE html>
<html>
  <head>
    <title>Π—Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°</title>
    <style> 
      . start {
      width: 400px;
      height: 150px;
      border: 1px solid #666;
      display: -webkit-flex; /* Safari */
      -webkit-justify-content: flex-start; /* Safari 6.1+ */
      display: flex;
      justify-content: flex-start;
      }
      .start div {
      width: 70px;
      height: 70px;
      background-color: #ccc;
      border: 1px solid #666;
      }
    </style>
  </head>
  <body>
    <h3>ΠŸΡ€ΠΈΠΌΠ΅Ρ€ свойства justify-content</h3>
    <p>УстановлСно свойство "justify-content: flex-start":</p>
    <div>
      <div>1</div>
      <div>2</div>
      <div>3</div>
    </div>
    </div>
  </body>
</html>
ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ сами!

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ со Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ «flex-end»:

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ΒΆ

<!DOCTYPE html>
<html>
  <head>
    <title>Π—Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°</title>
    <style> 
      . end {
      width: 400px;
      height: 150px;
      border: 1px solid #666;
      display: -webkit-flex; /* Safari */
      -webkit-justify-content: flex-end; /* Safari 6.1+ */
      display: flex;
      justify-content: flex-end;
      }
      .end div {
      width: 70px;
      height: 70px;
      background-color: #ccc;
      border: 1px solid #666;
      }
    </style>
  </head>
  <body>
    <h3>ΠŸΡ€ΠΈΠΌΠ΅Ρ€ свойства justify-content</h3>
    <p>УстановлСно свойство "justify-content: flex-end":</p>
    <div>
      <div>1</div>
      <div>2</div>
      <div>3</div>
    </div>
    </div>
  </body>
</html>
ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ сами!

ΠŸΡ€ΠΈΠΌΠ΅Ρ€, Π³Π΄Π΅ установлСно Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ «space-between» для свойства justify-content:

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ΒΆ

<!DOCTYPE html>
<html>
  <head>
    <title>Π—Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°</title>
    <style> 
      . space-between {
      width: 400px;
      height: 150px;
      border: 1px solid #666;
      display: -webkit-flex; /* Safari */
      -webkit-justify-content: space-between; /* Safari 6.1+ */
      display: flex;
      justify-content: space-between;
      }
      .space-between div {
      width: 70px;
      height: 70px;
      background-color: #ccc;
      border: 1px solid #666;
      }
    </style>
  </head>
  <body>
    <h3>ΠŸΡ€ΠΈΠΌΠ΅Ρ€ свойства justify-content</h3>
    <p>УстановлСно свойство "justify-content: space-between":</p>
    <div>
      <div>1</div>
      <div>2</div>
      <div>3</div>
    </div>
    </div>
  </body>
</html>
ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ сами!

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ со Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ «space-around»:

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ΒΆ

<!DOCTYPE html>
<html>
  <head>
    <title>Π—Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°</title>
    <style> 
      . space-around {
      width: 400px;
      height: 150px;
      border: 1px solid #666;
      display: -webkit-flex; /* Safari */
      -webkit-justify-content: space-around; /* Safari 6.1+ */
      display: flex;
      justify-content: space-around;
      }
      .space-around div {
      width: 70px;
      height: 70px;
      background-color: #ccc;
      border: 1px solid #666;
      }
    </style>
  </head>
  <body>
    <h3>ΠŸΡ€ΠΈΠΌΠ΅Ρ€ свойства justify-content</h3>
    <p>УстановлСно свойство "justify-content: space-around":</p>
    <div>
      <div>1</div>
      <div>2</div>
      <div>3</div>
    </div>
    </div>
  </body>
</html>
ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ сами!

ЗначСния¢

Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠžΠΏΠΈΡΠ°Π½ΠΈΠ΅
flex-startΠ­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΡƒΡŽΡ‚ΡΡ ΠΎΡ‚ Π½Π°Ρ‡Π°Π»Π° ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°.
flex-endΠ­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΡƒΡŽΡ‚ΡΡ ΠΎΡ‚ ΠΊΠΎΠ½Ρ†Π° ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°.
centerΠ­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°ΡŽΡ‚ΡΡ ΠΏΠΎ Ρ†Π΅Π½Ρ‚Ρ€Ρƒ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°.
space-aroundΠ­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ Ρ€Π°Π²Π½ΠΎΠΌΠ΅Ρ€Π½ΠΎ Ρ€Π°ΡΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ΡΡ ΠΏΠΎ всСй строкС. Π•ΡΡ‚ΡŒ пространство ΠΏΠ΅Ρ€Π΅Π΄ ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ элСмСнтом, Π° Ρ‚Π°ΠΊΠΆΠ΅ послС послСднСго элСмСнта.
space-betweenΠœΠ΅ΠΆΠ΄Ρƒ элСмСнтами Π΅ΡΡ‚ΡŒ Ρ€Π°Π²Π½ΠΎΠ΅ пространство..
initialУстанавливаСт свойство Π² Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ.
inheritΠ—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ элСмСнта наслСдуСтся ΠΎΡ‚ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ элСмСнта.

ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°

29.0+
21-28 -webkit-
12.0+ 28.0+ 9.0+
6.1-8.0 -webkit-
12.1+

Бвойства для выравнивания всСго ΠΈ ΠΈΡ… Π½ΠΎΠ²Ρ‹Π΅ Ρ‚Π°ΠΉΠ½Ρ‹ β€” CSS-LIVE

Если Π²Ρ‹ освоили флСксбоксы (Π° ΠΊΡ‚ΠΎ Π½Π΅ освоил ΠΈΡ… Π·Π° послСдниС Π΄Π²Π°-Ρ‚Ρ€ΠΈ Π³ΠΎΠ΄Π°?), для вас Π΄Π°Π²Π½ΠΎ Π½Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° ΠΎΡ‚Ρ†Π΅Π½Ρ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ‡Ρ‚ΠΎ ΡƒΠ³ΠΎΠ΄Π½ΠΎ, Π΄Π° ΠΈ Π²ΠΎΠΎΠ±Ρ‰Π΅ Π²Ρ‹Ρ€ΠΎΠ²Π½ΡΡ‚ΡŒ ΠΊΠ°ΠΊ ΡƒΠ³ΠΎΠ΄Π½ΠΎ. Π’Π°ΠΌ Π΄Π°Π²Π½ΠΎ Π·Π½Π°ΠΊΠΎΠΌΡ‹ Β«Π²ΠΎΠ»ΡˆΠ΅Π±Π½Ρ‹Π΅Β» свойства justify-content, align-content, align-items ΠΈ align-self, ΠΈ Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ ΠΈΠ· ΠΈΡ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ (Π½Π΅ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ ΠΈΡ… всС Π½Π°ΠΈΠ·ΡƒΡΡ‚ΡŒ, вСдь всСгда ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π² ΡˆΠΏΠ°Ρ€Π³Π°Π»ΠΊΠ΅ ΠΈΠ»ΠΈ наглядном справочникС:). Но всё Π»ΠΈ Π²Ρ‹ Π·Π½Π°Π΅Ρ‚Π΅ ΠΏΡ€ΠΎ эти свойства? Π§Ρ‚ΠΎ Ссли я скаТу Π²Π°ΠΌ, Ρ‡Ρ‚ΠΎ ΠΈΡ… могущСство Π½Π΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΎ флСксбоксами? И Ρ‡Ρ‚ΠΎ Π²Ρ‹ Π²ΠΈΠ΄Π΅Π»ΠΈ лишь Ρ‡Π°ΡΡ‚ΡŒ ΠΈΡ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ? И Ρ‡Ρ‚ΠΎ самих этих свойств Π½Π΅ 4, Π° Π² Π΄Π²Π° с лишним Ρ€Π°Π·Π° большС? Если Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΎΠ²Π»Π°Π΄Π΅Ρ‚ΡŒ всСй ΠΈΡ… ΠΌΠΎΡ‰ΡŒΡŽ, ΡƒΠ·Π½Π°Ρ‚ΡŒ, ΠΏΡ€ΠΈΡ‡Π΅ΠΌ Ρ‚ΡƒΡ‚ новомодная Π³Ρ€ΠΈΠ΄-раскладка (CSS Grid Layout), ΠΈ вас Π½Π΅ ΡΡ‚Ρ€Π°ΡˆΠ°Ρ‚ Π΄Π΅Π±Ρ€ΠΈ спСцификаций — Π΄ΠΎΠ±Ρ€ΠΎ ΠΏΠΎΠΆΠ°Π»ΠΎΠ²Π°Ρ‚ΡŒ Π² эту ΡΡ‚Π°Ρ‚ΡŒΡŽ, Π³Π΄Π΅ я ΠΏΠΎΠΊΠ°ΠΆΡƒ Π²Π°ΠΌ, насколько Π³Π»ΡƒΠ±ΠΎΠΊΠ° ΠΊΡ€ΠΎΠ»ΠΈΡ‡ΡŒΡ Π½ΠΎΡ€Π° W3C.

CSS-Π³Ρ€ΠΈΠ΄Ρ‹ упомянуты Π½Π΅ случайно: Π»ΡƒΡ‡ΡˆΠ΅ сразу Π²ΠΎΠΎΡ€ΡƒΠΆΠΈΡ‚Π΅ΡΡŒ ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ΠΎΠ², Π³Π΄Π΅ ΠΎΠ½ΠΈ ΡƒΠΆΠ΅ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ (FirefoxΒ 52+, ChromeΒ 57+, OperaΒ 44+ ΠΈΠ»ΠΈ SafariΒ 10.1+/iOSΒ 10.3+Β Safari), Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ Π²ΠΎ всСм ΠΈΡ… блСскС.

НС Ρ‚ΠΎΠ»ΡŒΠΊΠΎ флСксбоксы

Π’ Π½Π΅Π΄Π°Π²Π½Π΅ΠΉ ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΏΡ€ΠΎ Π½ΠΎΠ²Ρ‹Π΅ возмоТности флСксбоксов ΠΈ CSS-Π³Ρ€ΠΈΠ΄ΠΎΠ², ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ΠΈ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ Π² связкС, Π±Ρ‹Π» ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΈΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ со свойством align-self (ΠΈ Π΅Ρ‰Π΅ ΠΎΠ΄Π½ΠΈΠΌ, Π½ΠΎ ΠΎ Π½Π΅ΠΌ Ρ‡ΡƒΡ‚ΡŒ ΠΏΠΎΠ·ΠΆΠ΅) для ячССк Π³Ρ€ΠΈΠ΄Π°. А Π½ΠΈΠΆΠ΅Β β€” ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹ΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π³Π΄Π΅ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ сами ΡΡ€Π°Π²Π½ΠΈΡ‚ΡŒ дСйствиС всСх Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅Ρ… Π·Π½Π°ΠΊΠΎΠΌΡ‹Ρ… свойств Π² Π΄Π²ΡƒΡ… ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°Ρ… с Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ контСкстами форматирования — флСксбоксовом ΠΈ Π³Ρ€ΠΈΠ΄ΠΎΠ²ΠΎΠΌ:

See the Pen evKEMK by Ilya Streltsyn (@SelenIT) on CodePen.

Π’ΠΈΠ΄ΠΈΡ‚Π΅ ΠΎΠ±Ρ‰ΠΈΠΉ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏ?

Бвойство justify-content опрСдСляСт, Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ со свободным мСстом, ΠΎΡΡ‚Π°Π²ΡˆΠΈΠΌΡΡ послС размСщСния всСго ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π° ΠΏΠΎ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΠΈ (Ρ‚ΠΎΡ‡Π½Π΅Π΅, ΠΏΠΎ Π³Π»Π°Π²Π½ΠΎΠΉ оси, зависящСй ΠΎΡ‚ свойства flex-direction, для флСксбоксов, ΠΈ ΠΏΠΎ строчной оси, зависящСй ΠΎΡ‚ направлСния тСкста, для Π³Ρ€ΠΈΠ΄ΠΎΠ²Β β€” Π½ΠΎ ΠΏΠΎΠΊΠ° ограничимся простым случаСм, ΠΊΠ°ΠΊ Π² ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅). ΠžΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π»ΠΈ это мСсто Π² ΠΊΠΎΠ½Ρ†Π΅ строки (ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ), ΠΏΠ΅Ρ€Π΅ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ Π² Π½Π°Ρ‡Π°Π»ΠΎ (ΠΏΡ€ΠΈΠΆΠ°Π² ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚ ΠΊ ΠΊΠΎΠ½Ρ†Ρƒ), Ρ€Π°ΡΠΊΠΈΠ΄Π°Ρ‚ΡŒ ΠΏΠΎΡ€ΠΎΠ²Π½Ρƒ справа ΠΈ слСва ΠΎΡ‚ ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π° (Ρ‚Π΅ΠΌ самым ΠΎΡ‚Ρ†Π΅Π½Ρ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Π² Π΅Π³ΠΎ), Ρ€Π°ΡΠΊΠΈΠ΄Π°Ρ‚ΡŒ ΠΏΠΎΡ€ΠΎΠ²Π½Ρƒ ΠΌΠ΅ΠΆΠ΄Ρƒ элСмСнтами ΠΈ Ρ‚. Π΄. ЕдинствСнная Ρ€Π°Π·Π½ΠΈΡ†Π°, Ρ‡Ρ‚ΠΎ Π² Π³Ρ€ΠΈΠ΄Π΅ элСмСнты сгруппированы Π΅Ρ‰Π΅ ΠΈ ΠΏΠΎ Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΠΈ (ΠΏΠΎ столбцам), поэтому ΠΈ мСсто ΠΏΠΎΠ½Π΅Π²ΠΎΠ»Π΅ распрСдСляСтся ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΌΠ΅ΠΆΠ΄Ρƒ столбцами, Π° Π½Π΅ самими элСмСнтами, ΠΊΠ°ΠΊ Ρƒ флСксбоксов.

A align-content Π΄Π΅Π»Π°Π΅Ρ‚ ΠΏΠΎ сути Ρ‚ΠΎ ΠΆΠ΅ самоС, Π½ΠΎ ΠΏΠΎ Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΠΈ (Ρ‚ΠΎΡ‡Π½Π΅Π΅, ΠΏΠΎ пСрпСндикулярной оси для флСксбоксов ΠΈ ΠΏΠΎ Π±Π»ΠΎΡ‡Π½ΠΎΠΉ оси для Π³Ρ€ΠΈΠ΄ΠΎΠ², Ссли совсСм Π·Π°Π½ΡƒΠ΄ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ). Π—Π΄Π΅ΡΡŒ Π² ΠΎΠ±ΠΎΠΈΡ… случаях ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚ Ρƒ нас ΡƒΠΆΠ΅ сгруппирован — Π² строки (Π²ΠΎ флСксбоксах) ΠΈΠ»ΠΈ ряды (Π² Π³Ρ€ΠΈΠ΄Π΅). И свободноС мСсто ΠΏΠΎ Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ послС всСх этих строк/рядов, ΠΏΠ΅Ρ€Π΅Π΄ Π½ΠΈΠΌ, ΠΏΠΎΡ€ΠΎΠ²Π½Ρƒ Π΄ΠΎ ΠΈ послС Π½ΠΈΡ… (ΠΈ Ρ‚ΠΎΠ³Π΄Π° ΠΎΠ½ΠΈ Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΠΎ Ρ†Π΅Π½Ρ‚Ρ€Ρƒ), ΠΏΠΎΡ€ΠΎΠ²Π½Ρƒ ΠΌΠ΅ΠΆΠ΄Ρƒ ними… Π’ΠΎ флСксбоксах (Π³Π΄Π΅, Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ Π³Ρ€ΠΈΠ΄ΠΎΠ², Π½Π΅Ρ‚ ячССк с явными Ρ€Π°Π·ΠΌΠ΅Ρ€Π°ΠΌΠΈ) ΠΌΠΎΠΆΠ½ΠΎ Π΅Ρ‰Π΅ ΠΈ Ρ€Π°Π²Π½ΠΎΠΌΠ΅Ρ€Π½ΠΎ Ρ€Π°ΡΡ‚ΡΠ½ΡƒΡ‚ΡŒ высоту этих строк/рядов Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎ свободного мСста Π½Π΅ останСтся Π²ΠΎΠΎΠ±Ρ‰Π΅.

Π”Ρ€ΡƒΠ³ΠΈΠΌΠΈ словами: свойства *-content ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‚ всСм ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚ΠΎΠΌ сразу, пСрСдвигая ΠΈ раздвигая (Ссли Π½Π°Π΄ΠΎ) Ρ‚ΠΎ, Π²ΠΎ Ρ‡Ρ‚ΠΎ этот ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚ сгруппирован: строки, ряды ΠΈΠ»ΠΈ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ.

Ну Π° align-items Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π΅Ρ‚ ΠΈΠΌΠ΅Π½Π½ΠΎ Β«itemsΒ», Ρ‚.Π΅. элСмСнты — Π²Π½ΡƒΡ‚Ρ€ΠΈ строк флСксбокса ΠΈ рядов Π³Ρ€ΠΈΠ΄Π°. А align-selfΒ β€” Ρ‚ΠΎ ΠΆΠ΅ самоС, Π½ΠΎ для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ элСмСнта Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, ΠΈ указываСтся для Π½Π΅Π³ΠΎ самого. ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ Π·Π°Π΄Π°Π΅Ρ‚ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ элСмСнтов ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, Π²Ρ‚ΠΎΡ€ΠΎΠΉ позволяСт Π΅Π³ΠΎ ΠΏΠ΅Ρ€Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ.

Но ΠΊΠ°ΠΊ Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Ρ‚ΡŒ элСмСнты — всС (ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ) ΠΈΠ»ΠΈ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈΒ β€” ΠΏΠΎ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΠΈ, Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΊΠΎΠ»ΠΎΠ½ΠΎΠΊ Π³Ρ€ΠΈΠ΄Π°?

Π¦Π΅Π»Ρ‹Ρ… Π΄Π΅Π²ΡΡ‚ΡŒ свойств

ΠžΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ΡΡ, для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° выравнивания — всСго ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π°, всСх элСмСнтов ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΈ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ элСмСнта, Π΅Π³ΠΎ самого — Π΅ΡΡ‚ΡŒ ΠΏΠ°Ρ€Π° свойств, ΠΎΠ΄Π½ΠΎ ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π΅Ρ‚ ΠΏΠΎ Π³Π»Π°Π²Π½ΠΎΠΉ/строчной оси (Π² нашСм ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅Β β€” ΠΏΠΎ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΠΈ), Π° Π²Ρ‚ΠΎΡ€ΠΎΠ΅Β β€” ΠΏΠΎ ΠΏΠΎΠΏΠ΅Ρ€Π΅Ρ‡Π½ΠΎΠΉ/Π±Π»ΠΎΡ‡Π½ΠΎΠΉ (Π² нашСм ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅Β β€” ΠΏΠΎ Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΠΈ). ΠŸΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ΡΡ 6 свойств — всС ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΠΈ ΠΈΠ· Π΄Π²ΡƒΡ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ², ΠΏΠΎ ΠΊΠ°ΠΊΠΎΠΉ оси Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Ρ‚ΡŒ, ΠΈ Ρ‚Ρ€Π΅Ρ…Β β€” Ρ‡Ρ‚ΠΎ ΠΈΠΌΠ΅Π½Π½ΠΎ Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Ρ‚ΡŒ (ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚, элСмСнты ΠΈΠ»ΠΈ сам ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΉ элСмСнт). Π’ΠΎΡ‚ ΠΎΠ½ΠΈ:

  • align-content
  • justify-content
  • align-items
  • justify-items
  • align-self
  • justify-self

See the Pen qrYobV by Ilya Streltsyn (@SelenIT) on CodePen.

Π’ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π²Ρ‹ΡˆΠ΅ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ всС 6 свойств Π² дСйствии Π² Π³Ρ€ΠΈΠ΄Π°Ρ…. Π’ΠΎ флСксбоксах Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ 4 Π½Π°ΡˆΠΈΡ… старых Π·Π½Π°ΠΊΠΎΠΌΡ‹Ρ…: Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Ρ‚ΡŒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ элСмСнты ΠΏΠΎ Π³Π»Π°Π²Π½ΠΎΠΉ оси Ρ‚Π°ΠΌ бСссмыслСнно, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ всСм пространством ΠΌΠ΅ΠΆΠ΄Ρƒ Π½ΠΈΠΌΠΈ ΡƒΠΆΠ΅ Π·Π°Π²Π΅Π΄ΡƒΠ΅Ρ‚ justify-content, ΠΈ Ρ€Π°ΡΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ послС Π½Π΅Π³ΠΎ ΡƒΠΆΠ΅ Π½Π΅Ρ‡Π΅Π³ΠΎ.

Но ΠΏΠΈΡΠ°Ρ‚ΡŒ Ρ†Π΅Π»Ρ‹Ρ… Π΄Π²Π° свойства для выравнивания ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Π΄ΠΎΠ»Π³ΠΎ, нСльзя Π»ΠΈ ΠΊΠ°ΠΊ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ ΠΏΠΎΠΊΠΎΡ€ΠΎΡ‡Π΅? НС Ρ‚Π°ΠΊ Π΄Π°Π²Π½ΠΎ (Π² ΠΊΠΎΠ½Ρ†Π΅ осСни 2016-Π³ΠΎ) рабочая Π³Ρ€ΡƒΠΏΠΏΠ° CSS задалась Ρ‚Π΅ΠΌ ΠΆΠ΅ вопросом ΠΈ Ρ€Π΅ΡˆΠΈΠ»Π° ввСсти для ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΏΠ°Ρ€Ρ‹ align-Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ/justify-Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ ΡΠΎΠΊΡ€Π°Ρ‰Π΅Π½Π½ΡƒΡŽ запись. Над Π΅Π΅ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ Π΄ΠΎΠ»Π³ΠΎ Π»ΠΎΠΌΠ°Π»ΠΈ Π³ΠΎΠ»ΠΎΠ²Ρƒ ΠΈ спорили, Π½ΠΎ Π² ΠΈΡ‚ΠΎΠ³Π΅ ΠΏΠΎΠ±Π΅Π΄ΠΈΠ» Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ place-Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ.

Π’Π°ΠΊ Ρ‡Ρ‚ΠΎ Π² ΠΏΡ€ΠΈΠ΄Π°Ρ‡Ρƒ ΠΊ Ρ‚Π΅ΠΌ ΡˆΠ΅ΡΡ‚ΠΈ свойствам Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π΅ΡΡ‚ΡŒ Π΅Ρ‰Π΅ Ρ‚Ρ€ΠΈ:

  • place-content
  • place-items
  • place-self

Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ· Π½ΠΈΡ…Β β€” комбинация Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ align-* ΠΈ justify-* Ρ‡Π΅Ρ€Π΅Π· ΠΏΡ€ΠΎΠ±Π΅Π». НапримСр, place-content: center space-between ΠΈΠ»ΠΈ place-self: stretch center. ΠŸΠΎΡ€ΡΠ΄ΠΎΠΊ (сначала Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠ΅ Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅, ΠΏΠΎΡ‚ΠΎΠΌ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½ΠΎΠ΅) соотвСтствуСт порядку, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, отступы (Π² записях Ρ‚ΠΈΠΏΠ° margin: 20px auto). Если ΡƒΠΊΠ°Π·Π°Π½ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄Π½ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, place-items: start), ΠΎΠ½ΠΎ копируСтся для ΠΎΠ±Π΅ΠΈΡ… ΡΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΡ…, ΠΏΠΎ ΠΎΠ±Π΅ΠΈΠΌ осям.

ВсС 9 свойств ΡƒΠΆΠ΅ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚, ΠΊΠ°ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ, Π² Π½ΠΎΠ²Ρ‹Ρ… Firefox (52+). Π’ Chrome Π΄ΠΎ Canary 59 Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ сокращСнныС свойства (place-*) Π½Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Π»ΠΈ, Π½ΠΎ (Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΎ 25.05.2017) Π² Canary 60 ΠΎΠ½ΠΈ ΡƒΠΆΠ΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ (Ρ…ΠΎΡ‚ΡŒ ΠΈΠ½ΠΎΠ³Π΄Π° ΠΈ со странностями).

ΠšΡƒΡ‡Π° Π½ΠΎΠ²Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ

Если Π²Ρ‹ Π²Π½ΠΈΠΌΠ°Ρ‚Π΅Π»ΡŒΠ½ΠΎ рассмотрСли ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€, вас ΠΌΠΎΠ³Π»ΠΈ ΡƒΠ΄ΠΈΠ²ΠΈΡ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ значСния для свойств выравнивания. Они Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π½ΠΎΠ²Ρ‹Π΅, ΠΈ ΠΎ Π½ΠΈΡ… стоит Ρ€Π°ΡΡΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ.

start ΠΈ end

Π’ΠΎ флСксбоксах ΠΌΡ‹ ΠΏΡ€ΠΈΠ²Ρ‹ΠΊΠ»ΠΈ ΠΊ значСниям flex-start ΠΈ flex-end, зависящим ΠΎΡ‚ направлСния Π³Π»Π°Π²Π½ΠΎΠΉ ΠΈ ΠΏΠΎΠΏΠ΅Ρ€Π΅Ρ‡Π½ΠΎΠΉ осСй — ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅, Π² свою ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ, зависят ΠΎΡ‚ направлСния тСкста. ΠŸΡ€ΠΎΡΡ‚ΠΎ start ΠΈ endΒ β€” ΠΏΠΎΡ‡Ρ‚ΠΈ Ρ‚ΠΎ ΠΆΠ΅ самоС: Π½Π°Ρ‡Π°Π»ΠΎ/ΠΊΠΎΠ½Π΅Ρ† строки ΠΈΠ»ΠΈ Π±Π»ΠΎΠΊΠ° (ряда ΠΈΠ»ΠΈ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ) соотвСтствСнно, Π² зависимости ΠΎΡ‚ направлСния тСкста. Для строки/ряда ΠΏΡ€ΠΈ письмС слСва Π½Π°ΠΏΡ€Π°Π²ΠΎ startΒ β€” это Π»Π΅Π²Ρ‹ΠΉ ΠΊΡ€Π°ΠΉ, endΒ β€” ΠΏΡ€Π°Π²Ρ‹ΠΉ. ΠŸΡ€ΠΈ письмС справа Π½Π°Π»Π΅Π²ΠΎΒ β€” Π½Π°ΠΎΠ±ΠΎΡ€ΠΎΡ‚. ΠŸΡ€ΠΈ Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠΌ письмС свСрху Π²Π½ΠΈΠ·, соотвСтствСнно, startΒ β€” это Π²Π΅Ρ€Ρ…, endΒ β€” Π½ΠΈΠ·. И Ρ‚Π°ΠΊ Π΄Π°Π»Π΅Π΅.

На ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ start/end ΠΈ flex-start/flex-end лишь Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΏΠ΅Ρ€Π²Ρ‹Π΅, Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ Π²Ρ‚ΠΎΡ€Ρ‹Ρ…, Π½Π΅ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°ΡŽΡ‚ Β«ΠΏΠ΅Ρ€Π΅Π²ΠΎΡ€ΠΎΡ‚Π°Β» осСй Π² ситуациях Ρ‚ΠΈΠΏΠ° flex-flow: row-reversed wrap-reversed. А Π² Π³Ρ€ΠΈΠ΄Π°Ρ… ΠΎΠ½ΠΈ Π²ΠΎΠΎΠ±Ρ‰Π΅ ΠΏΠΎ сути синонимы.

Π’ Firefox эти значСния ΡƒΠΆΠ΅ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ ΠΈ для флСксбоксов, ΠΈ для Π³Ρ€ΠΈΠ΄ΠΎΠ², Π² ChromeΒ β€” ΠΏΠΎΠΊΠ° Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для Π³Ρ€ΠΈΠ΄ΠΎΠ².

self-start и self-end (для *-items и *-self)

Π­Ρ‚ΠΈ Π΄Π²Π° значСния хочСтся Π½Π°Π·Π²Π°Ρ‚ΡŒ Β«Π΅Ρ‰Π΅ Π±ΠΎΠ»Π΅Π΅ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈΒ», Ρ‡Π΅ΠΌ просто start ΠΈ end: ΠΎΠ½ΠΈ Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°ΡŽΡ‚ флСкс- ΠΈ Π³Ρ€ΠΈΠ΄-элСмСнты с ΡƒΡ‡Π΅Ρ‚ΠΎΠΌ ΠΈΡ… собствСнного направлСния тСкста. НапримСр, Ссли Π² ΠΎΠ΄Π½ΠΈΡ… ячСйках Π³Ρ€ΠΈΠ΄Π° тСкст ΠΈΠ΄Π΅Ρ‚ слСва Π½Π°ΠΏΡ€Π°Π²ΠΎ, Π° Π² Π΄Ρ€ΡƒΠ³ΠΈΡ…Β β€” справа Π½Π°Π»Π΅Π²ΠΎ (скаТСм, это русско-арабский ΡΠ»ΠΎΠ²Π°Ρ€ΡŒ), Ρ‚ΠΎ ΠΏΡ€ΠΈ justify-items: self-start содСрТимоС ΠΏΠ΅Ρ€Π²Ρ‹Ρ… приТмСтся ΠΊ Π»Π΅Π²ΠΎΠΌΡƒ ΠΊΡ€Π°ΡŽ, Π° Π²Ρ‚ΠΎΡ€Ρ‹Ρ…Β β€” ΠΊ ΠΏΡ€Π°Π²ΠΎΠΌΡƒ. Π’Ρ‹ ΠΌΠΎΠ³Π»ΠΈ Π²ΠΈΠ΄Π΅Ρ‚ΡŒ это Π² ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°Ρ… Π²Ρ‹ΡˆΠ΅Β β€” для прСдпослСднСго элСмСнта Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π΅, Π²Ρ‹Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ Π·Π΅Π»Π΅Π½Ρ‹ΠΌ Ρ†Π²Π΅Ρ‚ΠΎΠΌ .

left ΠΈ right

ΠŸΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π»ΠΈΡΡŒ для случая, ΠΊΠΎΠ³Π΄Π°, Ρ…ΠΎΡ‚ΡŒ ΠΈ Ρ€Π΅Π΄ΠΊΠΎ, Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ Π²Ρ‹Ρ€ΠΎΠ²Π½ΡΡ‚ΡŒ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ ΠΈ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎ, ΠΏΠΎ ΠΏΡ€Π°Π²ΠΎΠΌΡƒ/Π»Π΅Π²ΠΎΠΌΡƒ ΠΊΡ€Π°ΡŽ, нСзависимо ΠΎΡ‚ направлСния тСкста. Как эти свойства Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ для Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ выравнивания (ΠΈ Π½ΡƒΠΆΠ½Ρ‹ Π»ΠΈ ΠΎΠ½ΠΈ Ρ‚Π°ΠΌ Π²ΠΎΠΎΠ±Ρ‰Π΅), Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Ρ‹ спСцификации пока Π½Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΠ»ΠΈΡΡŒΒ (Π½Π° 9. 01.2018).

space-evenly (для *-content)

Π’ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Π΅ ΡˆΠΏΠ°Ρ€Π³Π°Π»ΠΊΠΈ Π”ΠΆΠΎΠ½ΠΈ Π’Ρ€Π°ΠΉΡ‚Π΅Π» Π½Π°ΠΌ Π² своё врСмя ΠΏΡ€ΠΈΡˆΠ»ΠΎΡΡŒ ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ ΠΎΠ΄Π½Ρƒ Π½Π΅Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ (Π² ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»Π΅ ΠΎΠ½Π° ΠΎΡΡ‚Π°Π»Π°ΡΡŒ Π΄ΠΎ сих ΠΏΠΎΡ€, Π±Ρ‹Π»Π° ΠΎΠ½Π° ΠΏΠΎΠ½Π°Ρ‡Π°Π»Ρƒ ΠΈ Π² ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠšΡ€ΠΈΡΠ° ΠšΠΎΠΉΠ΅Ρ€Π°, ΠΎΡ‚ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π”ΠΆΠΎΠ½ΠΈ ΠΎΡ‚Ρ‚Π°Π»ΠΊΠΈΠ²Π°Π»Π°ΡΡŒ). Для space-around Π±Ρ‹Π»ΠΎ нарисовано, Π±ΡƒΠ΄Ρ‚ΠΎ ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΊΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ элСмСнтами ΠΈ ΠΎΡ‚ ΠΊΡ€Π°Π΅Π² ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° Π΄ΠΎ ΠΊΡ€Π°ΠΉΠ½ΠΈΡ… элСмСнтов Ρ€Π°Π²Π½Ρ‹ Π΄Ρ€ΡƒΠ³ Π΄Ρ€ΡƒΠ³Ρƒ:

ИмСнно Ρ‚Π°ΠΊΠΎΠ³ΠΎ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° ΠΈΠ½Ρ‚ΡƒΠΈΡ‚ΠΈΠ²Π½ΠΎ ΠΎΠΆΠΈΠ΄Π°Π»ΠΈ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ (Π²ΠΊΠ»ΡŽΡ‡Π°Ρ мСня), ΠΈ фактичСский Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ space-around (ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΊΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ элСмСнтами Π²Π΄Π²ΠΎΠ΅ ΡˆΠΈΡ€Π΅, Ρ‡Π΅ΠΌ ΠΎΡ‚ ΠΊΡ€Π°Π΅Π²) нСприятно ΡƒΠ΄ΠΈΠ²ΠΈΠ». А Ρ€Π°Π²Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΊΠΎΠ² Π΄ΠΎ сих ΠΏΠΎΡ€ ΠΏΡ€ΠΈΡ…ΠΎΠ΄ΠΈΠ»ΠΎΡΡŒ Π΄ΠΎΠ±ΠΈΠ²Π°Ρ‚ΡŒΡΡ Π½Π΅Ρ‚Ρ€ΠΈΠ²ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ Ρ…Π°ΠΊΠ°ΠΌΠΈΒ β€” Π»ΠΈΠ±ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ space-between ΠΈ ::before c ::after, Π»ΠΈΠ±ΠΎ Π½Π΅Ρ‚ΠΈΠΏΠΈΡ‡Π½Ρ‹ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ margin: auto. И Ρ‚ΠΎ лишь для однострочных флСксбоксов.

И Π²ΠΎΡ‚ Π½Π°ΠΊΠΎΠ½Π΅Ρ† Ρƒ свойств justify-content ΠΈ align-content появилось Π½ΠΎΠ²ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ space-evenly, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π΄Π΅Π»Π°Π΅Ρ‚ эти ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΊΠΈ Ρ€Π°Π²Π½Ρ‹ΠΌΠΈ Π±Π΅Π· всяких ΡƒΡ…ΠΈΡ‰Ρ€Π΅Π½ΠΈΠΉ. Π₯ΠΎΡ‚ΡŒ Π² однострочном флСксбоксС, Ρ…ΠΎΡ‚ΡŒ Π² многострочном, Ρ…ΠΎΡ‚ΡŒ Π² Π³Ρ€ΠΈΠ΄Π΅. Π₯ΠΎΡ‚ΡŒ ΠΏΠΎ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΠΈ, Ρ…ΠΎΡ‚ΡŒ ΠΏΠΎ Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΠΈ. И это ΡƒΠΆΠ΅ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°Ρ…: Π² FirefoxΒ β€” ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ, Π² ChromeΒ β€” ΠΏΠΎΠΊΠ° Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для Π³Ρ€ΠΈΠ΄ΠΎΠ² (Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΎ 25.05.2017: Π½ΠΎ это Π±Ρ‹Π» Π±Π°Π³, ΠΈ Π±ΡƒΠΊΠ²Π°Π»ΡŒΠ½ΠΎ ΠΏΠΎΠ·Π°Π²Ρ‡Π΅Ρ€Π° Π΅Π³ΠΎ пофиксили! И Π² Safari Ρ‚ΠΎΠΆΠ΅). Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΎ 24.07.2017: Π² Chrome Canary 62 это Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΡƒΠΆΠ΅ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΏΠΎΠ»Π½ΠΎΡ†Π΅Π½Π½ΠΎ. Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΎ 10.08.2017: Π² ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎΠΌ Chrome 60 Ρ‚ΠΎΠΆΠ΅!

first baseline ΠΈ last baseline

Π’Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎ Π±Π°Π·ΠΎΠ²ΠΎΠΉ Π»ΠΈΠ½ΠΈΠΈ ΠΈΠ·Π΄Π°Π²Π½Π° Π±Ρ‹Π»ΠΎ слоТной Ρ‚Π΅ΠΌΠΎΠΉ Π² CSS, Π΄Π°ΠΆΠ΅ Π²Π΅Π»ΠΈΡ‡Π°ΠΉΡˆΠΈΠΌ мастСрам ΠΏΠΎΡ€ΠΎΠΉ ΠΏΡ€ΠΈΡ…ΠΎΠ΄ΠΈΠ»ΠΎΡΡŒ вСсти с Π½ΠΈΠΌ Ρ†Π΅Π»Ρ‹Π΅ Π±ΠΈΡ‚Π²Ρ‹. ОсобСнно удивляло, Ρ‡Ρ‚ΠΎ ΠΎΠ΄Π½ΠΈ элСмСнты — Π½Π°ΠΏΡ€., ΠΈΠ½Π»Π°ΠΉΠ½-Π±Π»ΠΎΠΊΠΈΒ β€” Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π»ΠΈΡΡŒ ΠΏΠΎ Π±Π°Π·ΠΎΠ²ΠΎΠΉ Π»ΠΈΠ½ΠΈΠΈ послСднСй строки, Π° Π΄Ρ€ΡƒΠ³ΠΈΠ΅Β β€” Π½Π°ΠΏΡ€., ΠΈΠ½Π»Π°ΠΉΠ½-Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹Β β€” ΠΏΠΎ ΠΏΠ΅Ρ€Π²ΠΎΠΉ. Π’Π΅ΠΏΠ΅Ρ€ΡŒ этим ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ явно. Для этого ΠΏΠ΅Ρ€Π΅Π΄ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌ словом baseline ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ Π΄Ρ€ΡƒΠ³ΠΎΠ΅ слово-ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Β β€” first ΠΈΠ»ΠΈ last.

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ указываСтся ΠΈΠΌΠ΅Π½Π½ΠΎ Ρ‡Π΅Ρ€Π΅Π· ΠΏΡ€ΠΎΠ±Π΅Π», Π½Π΅ Ρ‡Π΅Ρ€Π΅Π· дСфис, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ свойства получаСтся составным, ΠΈΠ· Π΄Π²ΡƒΡ… слов. Из-Π·Π° этого ΠΏΡ€ΠΎΠ±Π΅Π»Π° Ρ‡ΡƒΡ‚ΡŒ Π½Π΅ Π²ΠΎΠ·Π½ΠΈΠΊΠ»Π° ΠΏΡƒΡ‚Π°Π½ΠΈΡ†Π° с сокращСнными значСниями (ΠΊΠ°ΠΊ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, place-self:first baseline: ΠΊΠ°ΠΊ нСпонятноС Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅ first ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΉ оси ΠΈ Π²Ρ‹Ρ€Π°Π½ΠΈΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎ Π±Π°Π·ΠΎΠ²ΠΎΠΉ Π»ΠΈΠ½ΠΈΠΈ ΠΏΠΎ Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΠΈΠ»ΠΈ ΠΊΠ°ΠΊ Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎ Π±Π°Π·ΠΎΠ²ΠΎΠΉ Π»ΠΈΠ½ΠΈΠΈ ΠΏΠΎ ΠΎΠ±Π΅ΠΈΠΌ осям?), Π±Ρ‹Π»ΠΎ Π΄Π°ΠΆΠ΅ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π² сокращСнных значСниях ΠΏΡ€ΠΎΠ±Π΅Π» слСшСм, Π½ΠΎ Π² ΠΈΡ‚ΠΎΠ³Π΅ оставили ΠΏΡ€ΠΎΠ±Π΅Π». Π’Π°ΠΊ Ρ‡Ρ‚ΠΎ Π±ΡƒΠ΄ΡŒΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Ρ‚Π΅Π»ΡŒΠ½Ρ‹!

(Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΎ 25.05.2017) ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ слова safe ΠΈ unsafe

Π˜Ρ… я ΠΏΠΎΠΊΠ° Π½Π΅ смог ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ Π² дСйствии Π½ΠΈ Π² ΠΎΠ΄Π½ΠΎΠΌ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅, поэтому ΠΏΠΎΠ½Π°Ρ‡Π°Π»Ρƒ Π΄Π°ΠΆΠ΅ Π½Π΅ Ρ…ΠΎΡ‚Π΅Π» Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ Π² ΡΡ‚Π°Ρ‚ΡŒΡŽ. Но придСтся:)

Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΠΏΡ€ΠΈ Ρ†Π΅Π½Ρ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ элСмСнтов Π² Ρ€Π΅Π·ΠΈΠ½ΠΎΠ²ΠΎΠΌ флСкс-ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π΅ Π²Ρ‹ ΡΡ‚Π°Π»ΠΊΠΈΠ²Π°Π»ΠΈΡΡŒ с Ρ‚Π°ΠΊΠΎΠΉ нСприятной ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΡŒΡŽ: Ссли ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ становится мСньшС элСмСнта, Ρ‚ΠΎ ΠΎΠ±Π° края элСмСнта Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ Π²Ρ‹ΡΡ‚ΡƒΠΏΠ°Ρ‚ΡŒ Π·Π° края ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°. И Ссли ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ β€” это страница, Ρ‚ΠΎ Ρ‡Π°ΡΡ‚ΡŒ ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π° ΠΌΠΎΠΆΠ΅Ρ‚ ΡƒΠΉΡ‚ΠΈ Π·Π° Π΅Π΅ Π»Π΅Π²Ρ‹ΠΉ/Π²Π΅Ρ€Ρ…Π½ΠΈΠΉ ΠΊΡ€Π°ΠΉ ΠΈ ΡΡ‚Π°Ρ‚ΡŒ нСдоступной. Π‘ этим ΠΈ борСтся ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ слово safe: Ссли Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π΅Π³ΠΎ ΠΏΠ΅Ρ€Π΅Π΄ center (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, align-items: safe center;), Ρ‚ΠΎ элСмСнт Π±ΡƒΠ΄Π΅Ρ‚ Ρ†Π΅Π½Ρ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π² ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π΅ лишь Ρ‚ΠΎΠ³Π΄Π°, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ Ρ‚Π°ΠΌ умСщаСтся. Если ΠΆΠ΅ ΠΎΠ½ пСрСполняСт ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€, Ρ‚ΠΎ «лишниС» части Π±ΡƒΠ΄ΡƒΡ‚ Π²Ρ‹ΡΡ‚ΡƒΠΏΠ°Ρ‚ΡŒ лишь Π²ΠΏΡ€Π°Π²ΠΎ ΠΈ Π²Π½ΠΈΠ· (для ΠΏΡ€ΠΈΠ²Ρ‹Ρ‡Π½ΠΎΠ³ΠΎ Π½Π°ΠΌ направлСния письма), Π³Π΄Π΅ Π΄ΠΎ Π½ΠΈΡ… хотя Π±Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Π΄ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ скроллингом. ΠŸΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ Ρ‚Π°ΠΊ, ΠΊΠ°ΠΊ Π²Π΅Π΄ΡƒΡ‚ сСбя элСмСнты ΠΏΡ€ΠΈ Ρ†Π΅Π½Ρ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Ρ‡Π΅Ρ€Π΅Π· margin: auto. ΠšΠΎΡ‚ΠΎΡ€ΠΎΠ΅, кстати, ΠΈ ΠΈΠΌΠΈΡ‚ΠΈΡ€ΡƒΠ΅Ρ‚ это ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π½ΠΈΠΆΠ΅:

See the Pen OmqGKY by Ilya Streltsyn (@SelenIT) on CodePen.

Π•ΡΡ‚ΡŒ ΠΈ ΠΏΡ€ΠΎΡ‚ΠΈΠ²ΠΎΠΏΠΎΠ»ΠΎΠΆΠ½ΠΎΠ΅ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ слово unsafe β€” всСгда Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Ρ‚ΡŒ/Ρ†Π΅Π½Ρ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ элСмСнт Ρ‚Π°ΠΊ, ΠΊΠ°ΠΊ ΡƒΠΊΠ°Π·Π°Π½ΠΎ, Π½Π΅Π²Π°ΠΆΠ½ΠΎ, ΠΊΡƒΠ΄Π° ΠΈ насколько ΠΏΡ€ΠΈ этом Π²Ρ‹ΡΡ‚ΡƒΠΏΠ°ΡŽΡ‚ «излишки». А ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, ΠΏΠΎ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΌΡƒ Ρ‡Π΅Ρ€Π½ΠΎΠ²ΠΈΠΊΡƒ, Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΏΡ€ΠΎΠΈΡΡ…ΠΎΠ΄ΠΈΡ‚ΡŒ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ срСднСС β€” элСмСнт Π΄ΠΎΠ»ΠΆΠ΅Π½ Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Ρ‚ΡŒΡΡ ΠΊΠ°ΠΊ ΡƒΠΊΠ°Π·Π°Π½ΠΎ, Π½ΠΎ ΠΏΡ€ΠΈ появлСнии скроллинга ΠΎΠ½ вСсь Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ доступСн для Π½Π΅Π³ΠΎ (Π½ΠΎ Ρ‚Π°ΠΌ оставлСна ΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΊΠ°: Ссли Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Ρ‹ Π½Π΅ осилят Ρ‚Π°ΠΊΠΎΠ΅ Β«ΡƒΠΌΠ½ΠΎΠ΅Β» ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ β€” ΠΏΡƒΡΡ‚ΡŒ Π΄Π΅Π»Π°ΡŽΡ‚ unsafe:).

normal, auto ΠΈ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ слово legacy

Как часто Π±Ρ‹Π²Π°Π΅Ρ‚ Π² CSS, значСния с названиями Ρ‚ΠΈΠΏΠ° normal ΠΈ auto ΠΎΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ самыми Π·Π°ΠΏΡƒΡ‚Π°Π½Π½Ρ‹ΠΌΠΈ:). Β«ΠΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎΠ΅Β» ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π½Π°ΡˆΠΈΡ… свойств для выравнивания всСго зависит ΠΎΡ‚ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ способа форматирования, ΠΎΡ‚ унаслСдованных Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ (ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ legacy ΠΊΠ°ΠΊ Ρ€Π°Π· влияСт Π½Π° Ρ‚ΠΎ, Π±ΡƒΠ΄ΡƒΡ‚ Π»ΠΈ эти унаслСдованныС значСния ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒΡΡ), ΠΈ я Π΄Π°ΠΆΠ΅ Π½Π΅ стал Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ ΠΈΡ… Π² ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ (Π³Π΄Π΅ Π±Ρ‹Π»ΠΎ ΠΌΠΎΠΆΠ½ΠΎ), Ρ‡Ρ‚ΠΎΠ± совсСм ΡƒΠΆ вас Π½Π΅ Π·Π°ΠΏΡƒΡ‚Π°Ρ‚ΡŒ. Если Π·Π°Ρ…ΠΎΡ‚ΠΈΡ‚Π΅, Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ с ΠΊΠ°ΠΆΠ΄Ρ‹ΠΌ ΠΈΠ· Π½ΠΈΡ… Π²Ρ‹ смоТСтС нСпосрСдствСнно Π² спСцификации (см. Π½ΠΈΠΆΠ΅). К ΡΡ‡Π°ΡΡ‚ΡŒΡŽ, ΠΈ Π²ΠΎ флСксбоксах, ΠΈ Π² Π³Ρ€ΠΈΠ΄Π°Ρ… ΠΎΠ±Ρ‰ΠΈΠΉ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏ повСдСния ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ довольно прост: Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎΒ β€” ΠΏΠΎΠΏΡ‹Ρ‚Π°Ρ‚ΡŒΡΡ Ρ€Π°ΡΡ‚ΡΠ½ΡƒΡ‚ΡŒ (stretch), ΠΎΡΡ‚Π°Π»ΡŒΠ½ΠΎΠ΅Β β€” ΠΏΡ€ΠΈΠΆΠ°Ρ‚ΡŒ ΠΊ Π½Π°Ρ‡Π°Π»Ρƒ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ оси (start).

Π¦Π΅Π»Ρ‹ΠΉ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ спСцификации (CSS Box Alignment)

Бвойства для выравнивания всСго оказались Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠΊΠΎ Π²Π°ΠΆΠ½Ρ‹, Ρ‡Ρ‚ΠΎ для Π½ΠΈΡ… ΡƒΠΆΠ΅ Π΄Π°Π²Π½ΠΎ Π·Π°Π²Π΅Π»ΠΈ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ спСцификации: CSS Box Alignment Module Level 3. Π Π°Π±ΠΎΡ‚Π° Π½Π°Π΄ Π½ΠΈΠΌ Π΅Ρ‰Π΅ Π½Π΅ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½Π°, Π½ΠΎ Π² ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΌ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠΈ соврСмСнного CSS (извСстном ΠΊΠ°ΠΊ Β«CSS-2017Β») ΠΎΠ½ Π½Π°Π·Π²Π°Π½ Π² числС «тСорСтичСски ΠΏΡ€ΠΎΡ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹Ρ… ΠΈ Π²ΠΏΠΎΠ»Π½Π΅ ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½Ρ‹Ρ…Β» (Ρ…ΠΎΡ‚ΡŒ ΠΈ нуТдаСтся Π² Π΄Π°Π»ΡŒΠ½Π΅ΠΉΡˆΠΈΡ… тСстах ΠΈ ΠΎΠΏΡ‹Ρ‚Π΅ внСдрСния). А Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½Π°Ρ Π΅Π³ΠΎ вСрсия со всСми новСйшими ΠΏΡ€Π°Π²ΠΊΠ°ΠΌΠΈ (Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ рСдакторский Ρ‡Π΅Ρ€Π½ΠΎΠ²ΠΈΠΊ) здСсь: https://drafts.csswg.org/css-align/.

ΠœΠΎΠ΄ΡƒΠ»ΡŒ нСмалСнький ΠΏΠΎ ΠΎΠ±ΡŠΠ΅ΠΌΡƒ ΠΈ язык Π² Π½Π΅ΠΌ, прямо скаТСм, Π½Π΅ самый простой. Π§Ρ‚ΠΎΠ±Ρ‹ просто ΠΏΠΎΠ½ΡΡ‚ΡŒ, ΠΊΠ°ΠΊΠΈΠ΅ значСния ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Ρƒ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ свойства, приходится ΠΏΠΎΠ±Π΅Π³Π°Ρ‚ΡŒ ΠΏΠΎ пСрСкрСстным ссылкам: Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Β«<self-position>Β» ΠΈ Ρ‡Π΅ΠΌ ΠΎΠ½ΠΎ отличаСтся ΠΎΡ‚ Β«<content-position>Β»? ΠžΡ‚Π²Π΅Ρ‚Β β€” Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ срСди Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ для выравнивания ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… элСмСнтов, Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ для выравнивания Π³Ρ€ΡƒΠΏΠΏ, Π΅ΡΡ‚ΡŒ наши Π½ΠΎΠ²Ρ‹Π΅ Π·Π½Π°ΠΊΠΎΠΌΡ‹Π΅ self-start ΠΈ self-endΒ β€” Π²ΠΏΠΎΠ»Π½Π΅ Π»ΠΎΠ³ΠΈΡ‡Π΅Π½, Π½ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ½ΡΡ‚ΡŒ эту Π»ΠΎΠ³ΠΈΠΊΡƒ, Π½Π°Π΄ΠΎ ΠΊΠ°ΠΊ слСдуСт Π²Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒΡΡ! ΠΠ΅ΡƒΠ΄ΠΈΠ²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ, Ρ‡Ρ‚ΠΎ ΠΏΠΎ этому ΠΌΠΎΠ΄ΡƒΠ»ΡŽ Π΄ΠΎ сих ΠΏΠΎΡ€ Π½Π΅ΠΌΠ°Π»ΠΎ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹Ρ… ишью. Π’Π°ΠΊ Ρ‡Ρ‚ΠΎ ΡΠΎΠ²Π΅Ρ‚ΡƒΡŽ ΠΏΠΎΠΈΠ·ΡƒΡ‡Π°Ρ‚ΡŒ Π΅Π³ΠΎ ΠΏΠΎΠ²Π½ΠΈΠΌΠ°Ρ‚Π΅Π»ΡŒΠ½Π΅Π΅Β β€” Π²Π΄Ρ€ΡƒΠ³ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΎΡ‚ вас Π½Π΅ ΡƒΡΠΊΠΎΠ»ΡŒΠ·Π½Π΅Ρ‚ какая-Π½ΠΈΠ±ΡƒΠ΄ΡŒ ваТная Π½Π΅Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ, Π° Ρ‚ΠΎ ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅Ρ„ΠΎΡ€ΠΌΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ‡Ρ‚ΠΎ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ ΠΏΠΎΠΏΡ€ΠΎΡ‰Π΅ ΠΈ пояснСС?

Но самый Π³Π»Π°Π²Π½Ρ‹ΠΉ ΡΡŽΡ€ΠΏΡ€ΠΈΠ·, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ скрываСт Π² сСбС этот ΠΌΠΎΠ΄ΡƒΠ»ΡŒΒ β€” Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ свойства для выравнивания всСго Π½Π΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°ΡŽΡ‚ΡΡ ΠΎΠ΄Π½ΠΈΠΌΠΈ лишь флСксбоксами ΠΈ Π³Ρ€ΠΈΠ΄Π°ΠΌΠΈ: Π² Ρ‚Π΅ΠΎΡ€ΠΈΠΈ, ΠΎΠ½ΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±ΡƒΠ΄ΡƒΡ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ для ΠΌΠ½ΠΎΠ³ΠΎΠΊΠΎΠ»ΠΎΠ½ΠΎΡ‡Π½Ρ‹Ρ… раскладок (кстати, совсСм Π½Π΅Π΄Π°Π²Π½ΠΎ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Ρ‹Β β€” Chrome с 55-ΠΉ вСрсии, Firefox c 52-ΠΉΒ β€” Π½Π°ΠΊΠΎΠ½Π΅Ρ† ΡƒΠ±Ρ€Π°Π»ΠΈ прСфиксы для ΠΊΠΎΠ»ΠΎΠ½ΠΎΡ‡Π½Ρ‹Ρ… свойств!) и… барабанная Π΄Ρ€ΠΎΠ±ΡŒβ€¦ для ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Ρ… Π±Π»ΠΎΠΊΠΎΠ²! Π’Π°ΠΊ Ρ‡Ρ‚ΠΎ, Ссли я Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ ΠΏΠ΅Ρ€Π΅ΠΏΡƒΡ‚Π°Π», align-content: center Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡΡ‚Π°Ρ‚ΡŒ стандартным Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ΠΌ Π»Π΅Π³Π΅Π½Π΄Π°Ρ€Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ цСнтрирования ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π°. К соТалСнию, для justify-content для Π±Π»ΠΎΠΊΠΎΠ² явным ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ прописано, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ ΠΎΠ½ΠΎ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ (эх, придСтся ΠΈ дальшС Π½Π΅ΠΈΠ½Ρ‚ΡƒΠΈΡ‚ΠΈΠ²Π½ΠΎ Ρ†Π΅Π½Ρ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ margin-ами…), Π½ΠΎ для align-content, Π² Ρ‚Π΅ΠΎΡ€ΠΈΠΈ, Π½Π°Π΄Π΅ΠΆΠ΄Π° остаСтся! Π’ Ρ‚Π΅ΠΎΡ€ΠΈΠΈΒ β€” ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°Ρ… (Π½ΠΈ Π² FIrefox, Π½ΠΈ Π² Chrome Canary) это ΠΏΠΎΠΊΠ°, судя ΠΏΠΎ всСму, Π½Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚.

Π’ΠΎΠΎΠ±Ρ‰Π΅ браузСрная ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° свойств для выравнивания всСго — больная Ρ‚Π΅ΠΌΠ°: Π½Π° CanIUse ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠΉ Π·Π°ΠΊΠ»Π°Π΄ΠΊΠΈ для CSS Box Alignment Π½Π΅Ρ‚, Π² MDN, Ρ…ΠΎΡ‚ΡŒ информация ΠΎ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ΅ Ρ€Π°Π·Π½Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π½Π° ΡƒΠ΄ΠΈΠ²Π»Π΅Π½ΠΈΠ΅ подробная, ΡƒΠΏΠΎΠΌΠΈΠ½Π°ΡŽΡ‚ΡΡ ΠΎΠ½ΠΈ ΠΏΠΎΠΊΠ° лишь Π² контСкстС флСксбоксов. Π’Π°ΠΊ Ρ‡Ρ‚ΠΎ, Π²ΠΈΠ΄ΠΈΠΌΠΎ, СдинствСнный способ ΡƒΠ·Π½Π°Ρ‚ΡŒ всё ΠΎΠ±ΠΎ всСх Π½ΡŽΠ°Π½ΡΠ°Ρ… этих ΠΌΠΎΠ³ΡƒΡ‡ΠΈΡ… свойств Π²ΠΎ всСх, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ самыС Π½Π΅ΠΎΠΆΠΈΠ΄Π°Π½Π½Ρ‹Π΅, ситуациях — это ΡΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, ΡΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ Π΅Ρ‰Π΅ Ρ€Π°Π· ΡΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ (Π΄Π΅Ρ€ΠΆΠ° ΠΏΠ΅Ρ€Π΅Π΄ Π³Π»Π°Π·Π°ΠΌΠΈ ΡΠΏΠ΅Ρ†ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡŽ ΠΈ, Ссли Π½Π°Π΄ΠΎ, ΡΠΏΡ€Π°ΡˆΠΈΠ²Π°Ρ ΠΎΠ±ΠΎ всём нСпонятном прямо Ρƒ Π΅Π΅ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ΠΎΠ² Π½Π° Π³ΠΈΡ‚Ρ…Π°Π±Π΅:). Π’Π°ΠΊ Ρ‡Ρ‚ΠΎ ΠΆΠ΄Ρƒ Π² коммСнтариях ΠΏΠΎΠΏΡ€Π°Π²ΠΎΠΊ ΠΈ ΡƒΡ‚ΠΎΡ‡Π½Π΅Π½ΠΈΠΉ ΠΊΠΎ всСму, Ρ‡Ρ‚ΠΎ я упустил (я вСдь Π΄Π°ΠΆΠ΅ Π½Π΅ всС Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Π΅ значСния пСрСчислил), ΠΈ, разумССтся, Π²Π°ΡˆΠΈΡ… собствСнных ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΈΠΉ. И Π΄Π° ΠΏΡ€Π΅Π±ΡƒΠ΄Π΅Ρ‚ с Π²Π°ΠΌΠΈ сила CSSΠΏΠ΅Ρ†ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΉ!

P.S. Π­Ρ‚ΠΎ Ρ‚ΠΎΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ интСрСсно:

ΠŸΠΎΡ‡Π΅ΠΌΡƒ стоит Π½Π°Ρ‡Π°Ρ‚ΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ flexbox

МСнСС 50% ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚ΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ flexbox Π² своих ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°Ρ…. Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠΊΠ° Ρ‡Ρ‚ΠΎ Π½Π΅ всС Π·Π½Π°ΡŽΡ‚ ΠΎΠ± этом Π·Π°ΠΌΠ΅Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠΌ свойствС. Π’ Π΄Π°Π½Π½ΠΎΠΉ ΡΡ‚Π°Ρ‚ΡŒΠ΅ рассмотрим нСсколько ΠΏΡ€ΠΈΡ‡ΠΈΠ½ для использования flexbox.

1. Π”Π°Π½Π½ΠΎΠ΅ свойство поддСрТиваСтся всСми соврСмСнными Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°ΠΌΠΈ

ΠŸΠΎΡ‡Π΅ΠΌΡƒ я Ρ€Π°Π½ΡŒΡˆΠ΅ Π½Π΅ использовал свойство CSS3 — display:flex? Π― Π½Π΅ ΠΏΠΎΠ΄ΠΎΠ·Ρ€Π΅Π²Π°Π» ΠΎ ΡˆΠΈΡ€ΠΎΠΊΠΎΠΉ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ Π΄Π°Π½Π½ΠΎΠ³ΠΎ свойства всСми соврСмСнными Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°ΠΌΠΈ. Π”Π°ΠΆΠ΅ Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅ ΠΎΡ‚ майкрософта ΠΎΠ½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ с 10 вСрсии IE.

2. НС Π½ΡƒΠΆΠ½ΠΎ Π±Π΅ΡΠΏΠΎΠΊΠΎΠΈΡ‚ΡŒΡΡ ΠΎ синтаксисС

Π”Π°ΠΆΠ΅ Ссли Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ синтаксис своства flex поддСрТиваСтся послСдними вСрсиями Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ΠΎΠ², Ρ‚ΠΎ ΠΊΠ°ΠΊ Π±Ρ‹Ρ‚ΡŒ, хотя Π±Ρ‹, с двумя послСдними вСрсиями популярных Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ΠΎΠ²? Для ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ послСдних Π΄Π²ΡƒΡ… вСрсий Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°  достаточно 4 ΠΏΡ€Π°Π²ΠΈΠ»Π° для свойства «display».

/* Для ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ соврСмСнных Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ΠΎΠ² */
.flex-container {
  display: flex;
}

/* Для ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ послСдних Π΄Π²ΡƒΡ… вСрсий популярных Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ΠΎΠ² */
.flex-container {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

3. ΠžΡ‡Π΅Π½ΡŒ Π»Π΅Π³ΠΊΠΎ Π½Π°Ρ‡Π°Ρ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ

НуТно ΠΏΡ€ΠΈΠ·Π½Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΎΠ±ΡƒΡ‡ΠΈΡ‚ΡΡŒΡ flexbox Π·Π° ΠΏΠ°Ρ€Ρƒ ΠΌΠΈΠ½ΡƒΡ‚ Π½Π΅ получится. Π•ΡΡ‚ΡŒ 12 Π½ΠΎΠ²Ρ‹Ρ… свойств, Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… имССтся Π² срСднСм ΠΏΠΎ 4 значСния. Π­Ρ‚ΠΎΡ‚ Ρ„Π°ΠΊΡ‚ ΠΌΠΎΠΆΠ΅Ρ‚ вас ΠΎΡΡ‚Π°Π½ΠΎΠ²Π°ΠΈΡ‚ΡŒ ΠΏΡ€ΠΈ ΠΆΠ΅Π»Π°Π½ΠΈΠΈ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π° Π½Π° Π΄Π°Π½Π½ΠΎΠ΅ свойство.

Но Π²Π°ΠΌ Π½Π΅ придСтся ΠΈΠ·ΡƒΡ‡Π°Ρ‚ΡŒ всС значСния ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ с нуля. Для Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π° случаСв достаточно использованиС Ρ‚Ρ€Π΅Ρ… свойств:

  • display — УстанавливаСт элСмСнт ΠΊΠ°ΠΊ встроСнный элСмСнт ΠΈΠ»ΠΈ Π±Π»ΠΎΠΊ flexbox с Π΄ΠΎΡ‡Π΅Ρ€Π½ΠΈΠΌΠΈ элСмСнтами
  • justify-content — Π”Π°Π½Π½ΠΎΠ΅ свойство опрСдСляСт Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½ΠΎΠ΅ Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅ элСмСнтов Π²Π½ΡƒΡ‚Ρ€ΠΈ flex ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°
  • align-items —Β Π”Π°Π½Π½ΠΎΠ΅ свойство опрСдСляСт Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠ΅Β Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅ элСмСнтов Π²Π½ΡƒΡ‚Ρ€ΠΈ flex ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°

Π”Π°ΠΆΠ΅ с этими трСмя свойствами ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ΡŒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ манипуляции. Когда ΠΏΡ€ΠΈΠ²Ρ‹ΠΊΠ½ΠΈΡ‚Π΅ ΠΊ этим свойствам ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠ·ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΎΡΡ‚Π°ΡŒΠ½Ρ‹Π΅ ΠΈΠ»ΠΈ ΡƒΠ·Π½Π°Ρ‚ΡŒ ΠΈΠ· Π½ΠΈΡ… самоС Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΠ΅.

4. Π’Ρ‹Ρ€ΠΎΠ²Π½ΡΡ‚ΡŒ элСмСнты ΠΏΠΎ Ρ†Π΅Π½Ρ‚Ρ€Ρƒ (ΠΊΠ°ΠΊ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΠΈ, Ρ‚Π°ΠΊ ΠΈ Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΠΈ)

ΠžΡ‚Π»ΠΈΡ‡Π½Ρ‹ΠΌ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² Π² ΠΏΠΎΠ»ΡŒΠ·Ρƒ использования свойства flexbox, являСтся Ρ‚ΠΎΡ‚ Ρ„Π°ΠΊΡ‚, Ρ‡Ρ‚ΠΎ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹Ρ€ΠΎΠ²Π½ΡΡ‚ΡŒ элСмСнт ΠΏΠΎ Ρ†Π΅Π½Ρ‚Ρ€Ρƒ экрана ΠΈΠ»ΠΈ Π±Π»ΠΎΠΊΠ° всСго Π·Π° 4 строчки. Π’ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ использования Π΄Π°Π½Π½ΠΎΠ³ΠΎ выравнивания 

.flex-container{
display: flex;
justify-content: center;/* Π’Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΠΈ */
align-items: center;/* Π’Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎ Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΠΈ */
border: 2px dashed #000;
}

Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ:Β 

5. Π˜Π·ΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹, встроСнных Π² ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ элСмСнтов, ΠΎΡ‡Π΅Π½ΡŒ просто.

Одна ΠΈΠ· ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ с использованиСм inline-block — стандартный отступ Π² 4px ΠΌΠ΅ΠΆΠ΄Ρƒ элСмСнтами, ΠΈ хотя ΠΎΠ±ΠΎΠΉΡ‚ΠΈ Π΄Π°Π½Π½ΡƒΡŽ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ ΠΌΠΎΠΆΠ½ΠΎ,Π·Π°Π΄Π°Π² ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ margin, это ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ²Π»Π΅Ρ‡ΡŒ Π·Π° собой Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹.

Π‘ flexbox ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π±Π΅Π· ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ строчныС элСмСнты ΠΈ Π²Ρ‹Ρ€ΠΎΠ²Π½ΡΡ‚ΡŒ ΠΈΡ… ΠΏΠΎ всСй ΡˆΠΈΡ€ΠΈΠ½Π΅ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°,Π·Π°Π΄Π°Π² Ρ‚Π°ΠΊΠΈΠ΅ стили:

.flex-container{display: flex;}
.flex-item{width: 20%;}

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ Π΄Π°Π½Π½ΠΎΠ³ΠΎ дСйствия ΡƒΠ²ΠΈΠ΄ΠΈΠΌ:

Помимо этого ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π΄Π°Ρ‚ΡŒ Ρ€Π°Π²Π½ΠΎΠΌΠ΅Ρ€Π½Ρ‹Π΅ отступы для элСмСнтов ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°:

. flex-container{
display: flex;
justify-content: space-around;
}

Π’Π°ΠΊ ΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π΄Π°Ρ‚ΡŒ Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ срСдних элСмСнтов, Π±Π΅Π· использования first-child ΠΈ last-child

.flex-container{
display: flex;
justify-content: space-between;
}

6. Π‘Π»ΠΎΠΆΠ½Ρ‹Π΅ элСмСнты Π»Π΅Π³ΠΊΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ

И ΠΎΠ΄Π½Π° ΠΈΠ· Π³Π»Π°Π²Π½Ρ‹Ρ… ΠΏΡ€ΠΈΡ‡ΠΈΠ½ для использования flexbox`a — это простоС созданиС слоТных ΠΌΠ°ΠΊΠ΅Ρ‚ΠΎΠ². Π’ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΡ… ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°Ρ… Π±Ρ‹Π»ΠΎ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с ΠΎΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΌΠΈ элСмСнтами. Π’ Π΄Π°Π½Π½ΠΎΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΏΠΎΠΊΠ°ΠΆΡƒ ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с нСсколькими элСмСнтами Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° с display:flex

Для ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ ΠΎΠ±Ρ‰ΠΈΠΉ ΠΌΠ°ΠΊΠ΅Ρ‚ Ρ†Π΅Π½ΠΎΠ²ΠΎΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹:

Π’ Π½Π΅ΠΉ Π²ΠΈΠ΄ΠΈΠΌ Ρ‚Ρ€ΠΈ Π±Π»ΠΎΠΊΠ° <div>, ΠΏΡ€ΠΈΡ‡Π΅ΠΌ срСдний Π² Π΄Π²Π° Ρ€Π°Π·Π° ΠΏΡ€Π΅Π²Ρ‹ΡˆΠ°Π΅Ρ‚ ΡˆΠΈΡ€ΠΈΠ½Ρƒ Π΄Π²ΡƒΡ… Π΄Ρ€ΡƒΠ³ΠΈΡ…. Для достиТСния Π΄Π°Π½Π½ΠΎΠΉ вСрстки с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ свойства flex, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Ρ‚Π°ΠΊΠΎΠΉ ΠΊΠΎΠ΄:

.flex-container  { 
  display : flex ; /*ΠšΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Ρƒ Π·Π°Π΄Π°Π΅ΠΌ флСкс для позиционирования Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΡ… элСмСнтов*/
  align-items : center ; /*Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠ΅ элСмСнты Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π΅ΠΌ ΠΏΠΎ Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΠΈ
} 

. flex-items:not(:nth-child(2))  { /*Для всСх ΠΊΡ€ΠΎΠΌΠ΅ Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ элСмСнта Π·Π°Π΄Π°Π΅ΠΌ Ρ€Π°Π·ΠΌΠ΅Ρ€ Ρ€Π°Π²Π½Ρ‹ΠΉ Π΅Π΄ΠΈΠ½ΠΈΡ†Π΅ ΠΈ высоту, ΠΌΠ΅Π½ΡŒΡˆΡƒΡŽ Ρ‡Π΅ΠΌ Ρƒ срСднСго Π±Π»ΠΎΠΊΠ°*/
  flex-grow : 1 ; 
  height : 300px ; 
} 

.flex-items:nth-child(2)  { /*Для Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ элСмСнта Π·Π°Π΄Π°Π΄ΠΈΠΌ ΡˆΠΈΡ€ΠΈΠ½Ρƒ 2, Ρ‚.Π΅. Π² Π΄Π²Π° Ρ€Π°Π·Π° ΠΏΡ€Π΅Π²Ρ‹ΡˆΠ°ΡŽΡ‰ΡƒΡŽ сосСдниС элСмСнты flex-items ΠΈ высоту Π½Π° 50px Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ Ρ‡Π΅ΠΌ Ρƒ Π΄Ρ€ΡƒΠ³ΠΈΡ… элСмСнтов*/
  flex-grow : 2 ; 
  height : 350px ; 
}

ΠžΡ‚Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ вСрскти Π½Π° flexbox: ПолноС руководство ΠΏΠΎ flexbox

Flexbox CSS #1 — display | justify-content

Flexbox CSS — Ρ‚Ρ€ΠΈ основных свойства выравнивания элСмСнтов

Π’ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΌ ΡƒΡ€ΠΎΠΊΠ΅ Ρ€Π°Π·Π±Π΅Ρ€Π΅ΠΌ Ρ‚Ρ€ΠΈ основных свойства Flexbox CSS — display | justify-content | align-items. ΠŸΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΈΡ… ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Ρ‚ΡŒ flex-элСмСнты ΠΏΠΎ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΠΈ ΠΈ Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΠΈ.Β 

See the Pen #1 Flexbox – display | justify-content | align-items by Denis (@Dwstroy) on CodePen.

Π”Π΅Π»Π°Π΅ΠΌ ΠΏΠ»ΠΎΡ‰Π°Π΄ΠΊΡƒ для тСстирования свойств Flexbox

Для Ρ‚Π΅ΠΎΡ€ΠΈΠΈ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΈΠΌ ΠΏΠ»Π°Ρ†Π΄Π°Ρ€ΠΌ, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π±ΡƒΠ΄Ρƒ Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒΒ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ flex-элСмСнтов. Для этого сдСлаю ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΡƒΡŽ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡŽ (lesson) ΠΈ создам Π² Π½Π΅ΠΉ index Ρ„Π°ΠΉΠ».

<!DOCTYPE html>
<html lang="ru">
<head>
   <meta charset="UTF-8">
   <title>#1 Flexbox – display | justify-content | align-items</title>
</head>
<body>

Π‘Π»ΠΎΠΊ с классом dws-wrapper,Β Π±ΡƒΠ΄Π΅Ρ‚ ΡΠ»ΡƒΠΆΠΈΡ‚ΡŒ ΠΎΠ±Π΅Ρ€Ρ‚ΠΊΠΎΠΉ всСго содСрТимого. Π’ Π½Π΅ΠΌ ΠΏΡ€ΠΎΠΏΠΈΡˆΠ΅ΠΌ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ с Ρ‚Π΅ΠΌΠΎΠΉ ΡƒΡ€ΠΎΠΊΠ° «#1 Flexbox – display | justify-content | align-items».

Π”Π°Π»Π΅Π΅ Π½Π°ΠΌ понадобится, Π±Π»ΠΎΠΊ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹ΡΡ‚ΡƒΠΏΠ°Ρ‚ΡŒ Π² качСствС flex-ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°, Π² Π½ΡƒΡ‚Ρ€ΠΈΠΈ Π΅Π³ΠΎ располоТим flex-элСмСнты. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ UL Π² качСствС ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°, Π° списки LI Π² качСствС элСмСнтов. Π’ Π½ΡƒΡ‚Ρ€ΠΈΠΈ добавлю тСкст с порядковым Π½ΠΎΠΌΠ΅Ρ€ΠΎΠΌ элСмСнта.

ul.flex-cont>li.flex-elem{elem-$}*6
<ul>
 <li>elem-1</li>
 <li>elem-2</li>
 <li>elem-3</li>
 <li>elem-4</li>
 <li>elem-5</li>
 <li>elem-6</li>
</ul>

Для Π±ΠΎΠ»Π΅Π΅ понятной Π²ΠΈΠ·ΡƒΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΡ€ΠΈΠ΄Π°ΠΌ ΠΎΡ„ΠΎΡ€ΠΌΠ»Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹ΠΌ элСмСнтам.

Π‘ΠΎΠ·Π΄Π°ΠΌ, ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΠΌ Π΄Π²Π° Ρ„Π°ΠΉΠ»Π°, Π² ΠΏΠ΅Ρ€Π²ΠΎΠΌ описываСм стандартноС ΠΎΡ„ΠΎΡ€ΠΌΠ»Π΅Π½ΠΈΠ΅ элСмСнтов, Π²ΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΌ прописываСм ΠΏΡ€Π°Π²ΠΈΠ»Π° ΠΏΠΎ flexbox ΠΈ всС это располоТим Π² Π½ΠΎΠ²ΠΎΠΉ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ css.

<link rel="stylesheet" type="text/css" href="css/style.css">
<link rel="stylesheet" type="text/css" href="css/flexbox.css">

Когда Ρ€Π΅Ρ‡ΡŒ ΠΈΠ΄Π΅Ρ‚ ΠΎ flexbox, Π²Ρ‹ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π΄ собой ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€. Π§Ρ‚ΠΎ Π±Ρ‹ это Π±Ρ‹Π»ΠΎ нагляднСй, UL прСдставим Π² Π²ΠΈΠ΄Π΅ Π±Π»ΠΎΠΊΠ°, Π³Π΄Π΅ Π·Π°Π΄Π°Π΄ΠΈΠΌ для Π½Π΅Π³ΠΎ Π±Π°Π·ΠΎΠ²Ρ‹ΠΉ Ρ†Π²Π΅Ρ‚, ΡƒΠ±Π΅Ρ€Π΅ΠΌ ΠΌΠ°Ρ€ΠΊΠΈΡ€ΠΎΠ²ΠΊΡƒ списков ΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΠΌ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠ΅ отступы. Π­Ρ‚ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Π±ΡƒΠ΄ΡƒΡ‰Π΅ΠΉ flex-ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€.

ul {
 background: #ccc;
 list-style-type: none;
 padding: 10px;
}

Π—Π°Ρ‚Π΅ΠΌ ΠΎΡ„ΠΎΡ€ΠΌΠΈΠΌ списки LI Π² качСствС ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… Π±Π»ΠΎΠΊΠΎΠ², ΠΎΠ½ΠΈ ΡΠ²Π»ΡΡŽΡ‚ΡΡ Π΄ΠΎΡ‡Π΅Ρ€Π½ΠΈΠΌΠΈ элСмСнтами Π±ΡƒΠ΄ΡƒΡ‰Π΅Π³ΠΎ flex-ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°. Π‘Π΄Π΅Π»Π°Π΅ΠΌ ΠΈΡ… Ρ„ΠΎΠ½ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ Ρ†Π²Π΅Ρ‚Π°, ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠΌ ΡˆΡ€ΠΈΡ„Ρ‚, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ присвоим Π±Π΅Π»Ρ‹ΠΉ Ρ†Π²Π΅Ρ‚, ΠΈ Π·Π°Π΄Π°Π΄ΠΈΠΌ внСшниС ΠΈ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠ΅ отступы ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡƒ элСмСнту. Плюс Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΡ€ΠΎΠ²Π΅Π΄Ρƒ Π΅Ρ‰Π΅ Π½Π΅ΠΊΠΈΠ΅ оформлСния.

li {
 background-color: #18758d;
 font-size: 20px;
 color: #ffffff;
 margin: 5px;
 padding: 10px;
}
.dws-wrapper {
 margin-top: 100px;
font-family: Verdana, sans-serif;
}

h2 {
  color: #114d5e;
  font-size: 16px;
  line-height: 25px;
 }
h2 span {
 color: #ffffff;
 background: #074249;
 padding: 3px 8px;
}

И Ρ‚Π°ΠΊ, ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΈ Π½Π΅ΠΊΠΈΠΉ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ с Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹ΠΌΠΈ Π² Π½Π΅ΠΌ элСмСнтами. Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ Π²Π΅Π΄ΡƒΡ‚ сСбя стандартным ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, занимая всю Π΄ΠΎΠΏΡƒΡΡ‚ΠΈΠΌΡƒΡŽ ΡˆΠΈΡ€ΠΈΠ½Ρƒ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°.

Для Ρ‡Π΅Π³ΠΎ этот вСсь процСсс ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ описал, для Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎ Π±Ρ‹ Π²Ρ‹ ΠΏΠΎΠ½ΠΈΠΌΠ°Π»ΠΈ, Ρ‡Ρ‚ΠΎ flexbox ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ любой элСмСнт, Π±ΡƒΠ΄ΡŒ Ρ‚ΠΎ UL ΠΈΠ»ΠΈ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ взятый Π±Π»ΠΎΠΊ, Ρ€Π°Π·Π½ΠΈΡ†Ρ‹ Π½Π΅ ΠΊΠ°ΠΊΠΎΠΉ Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚.

Π Π°Π·Π±ΠΈΡ€Π°Π΅ΠΌ Ρ‚Ρ€ΠΈ основных свойства FLEXBOX

Бвойство display

ΠŸΠ΅Ρ€Π²ΠΎΠ΅ свойство, с ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ познакомимся это display, ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ объявляСм flex-ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€.

<h2><span>display</span> (объявляСм flexbox)</h2>

Бвойство displayΒ  ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΠΌΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°, ΠΈ ΠΈΠΌΠ΅Π΅Ρ‚ Π΄Π²Π° значСния:

display: flex – Π΄Π΅Π»Π°Π΅Ρ‚ flex-ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ Π±Π»ΠΎΡ‡Π½Ρ‹ΠΌ элСмСнтом ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ всю ΡˆΠΈΡ€ΠΈΠ½Ρƒ экрана.

display: flex;

display: inline-flex – ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ прСобразуСтся Π² строчный элСмСнт, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΡ‚Π²Π΅Π΄Π΅Π½Π½ΠΎΠ΅ пространство.

display: inline-flex;

ΠœΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ flex, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ собираСмся ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ элСмСнты Π² Π½ΡƒΡ‚Ρ€ΠΈΠΈ flex-ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°.

.flex-cont {
 display: flex;
}

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ ΠΊΠΎΠ³Π΄Π° объявили ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ display: flex, всС Π΅Π³ΠΎ Π΄ΠΎΡ‡Π΅Ρ€Π½ΠΈΠ΅ элСмСнты стали flex-элСмСнтами ΠΈ приняли Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½ΠΎΠ΅ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π²Ρ‹ΡΡ‚Ρ€Π°ΠΈΠ²Π°Π²ΡˆΠΈΠ΅ΡΡ Π² ряд.Β  Π’Π°ΠΊΠΎΠ΅ Ρ€Π°Π½Π΅Π΅ располоТСниС ΠΌΡ‹ достигали ΠΏΡƒΡ‚Π΅ΠΌ float: left ΠΊ Ρ‚ΠΎΠΌΡƒ ΠΆΠ΅, послС послСднСго элСмСнта Π½Π°ΠΌ ΠΏΡ€ΠΈΡ…ΠΎΠ΄ΠΈΠ»ΠΎΡΡŒ ΡΠ±Ρ€Π°ΡΡ‹Π²Π°Ρ‚ΡŒ ΠΎΠ±Ρ‚Π΅ΠΊΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ Π±Ρ‹ Ρ„ΠΎΠ½ Π±Π»ΠΎΠΊΠ° Π½Π΅ схлопывался.

.flex-elem {
 float: left;
}
<div></div>

Π’Π΅ΠΏΠ΅Ρ€ΡŒ это ΠΌΡ‹ Π΄Π΅Π»Π°Π΅ΠΌ всС ΠΎΠ΄Π½ΠΎΠΉ записью display: flex, ΠΈ Π½Π΅Ρ‚ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ схлопываниСм Ρ„ΠΎΠ½Π° Ρƒ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°.

Π”Π°Π»Π΅Π΅ Π΄Π°Π²Π°ΠΉΡ‚Π΅ Ρ€Π°Π·Π±Π΅Ρ€Π΅ΠΌ, Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½ΠΎΠ΅ Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅ flex-элСмСнтов, Π½ΠΎ ΠΏΡ€Π΅ΠΆΠ΄Π΅ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΎ flex-ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π΅ ΠΈ flex-элСмСнтах.

Для ΠΊΠ°ΠΆΠ΄Ρ‹Ρ… ΠΈΠ· Π½ΠΈΡ… Π΅ΡΡ‚ΡŒ свои ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ свойства, ΠΊΠ°ΠΊ для flex-ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°, Ρ‚Π°ΠΊ ΠΈ для flex-элСмСнтов. Когда Π·Π°Π΄Π°Π΅ΠΌ свойства для ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°, Ρ‚Π΅ΠΌ самым ΠΌΡ‹ Π·Π°Π΄Π°Π΅ΠΌ ΠΊΠ°ΠΊΠΎΠ΅-Ρ‚ΠΎ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ всСх Π΅Π³ΠΎ Π΄ΠΎΡ‡Π΅Ρ€Π½ΠΈΡ… элСмСнтов. Π’ Ρ‚ΠΎΠΆΠ΅ врСмя, ΠΊΠΎΠ³Π΄Π° Π·Π°Π΄Π°Π΅ΠΌ свойство для элСмСнтов, это подразумСваСтся ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ для ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ элСмСнта ΠΈΠ»ΠΈ для ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ Π³Ρ€ΡƒΠΏΠΏΡ‹.

Π’ Π΄Π°Π½Π½ΠΎΠΌ ΡƒΡ€ΠΎΠΊΠ΅ ΠΌΡ‹ Ρ€Π°Π±ΠΎΡ‚Π°Π΅ΠΌ с ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΎΠΌ, Π° соотвСтствСнно свойство примСняСтся ΠΊΠΎ всСм Π΅Π³ΠΎ Π΄ΠΎΡ‡Π΅Ρ€Π½ΠΈΠΌ элСмСнтам.

Бвойство justify-content – (Π’Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΠΈ)

Рассмотрим Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅ flex-элСмСнтов ΠΏΠΎ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΠΈ, для этого Π΅ΡΡ‚ΡŒ свойство justify-content, ΠΎΠ½ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΠΌΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°, ΠΈΠΌΠ΅Π΅Ρ‚ ΠΏΡΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ.

justify-content: flex-start, Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, всС элСмСнты ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΡƒΡŽΡ‚ΡΡ Π² Π½Π°Ρ‡Π°Π»Π΅ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°.

justify-content: flex-start;

justify-content: flex-end, элСмСнты ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΡƒΠ΅Ρ‚ Π² ΠΊΠΎΠ½Ρ†Π΅ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°.

justify-content: flex-end;

justify-content: center, всС элСмСнты ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΏΠΎ сСрСдинС flex-ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°.

justify-content: center;

justify-content: space-between, ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ ΠΈ послСдний элСмСнт позиционируСтся ΠΏΠΎ краям ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°, Π° всС ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ элСмСнты Ρ€Π°Π²Π½ΠΎΠΌΠ΅Ρ€Π½ΠΎ Ρ€Π°ΡΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ пространство ΠΌΠ΅ΠΆΠ΄Ρƒ собой.

justify-content: space-between;

justify-content: space-around, элСмСнты ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΡƒΡŽΡ‚ΡΡ ΠΏΠΎ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΠΈ Ρ€Π°Π²Π½ΠΎΠΌΠ΅Ρ€Π½ΠΎ, распрСдСляя ΠΌΠ΅ΠΆΠ΄Ρƒ собой всС свободноС пространство.

justify-content: space-around;

Бвойство align-items — (Π’Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎ Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΠΈ)

Как с Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΌ Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅ΠΌ, Π΅ΡΡ‚ΡŒ Ρ‚Π°ΠΊ ΠΆΠ΅ свойство для выравнивания flex-элСмСнтов ΠΏΠΎ Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΠΈ.

<h2><span>align-items</span> - Π’Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎ Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΠΈ</h2>

НазываСтся ΠΎΠ½ΠΎ align-items, устанавливаСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° ΠΈ ΠΈΠΌΠ΅Π΅Ρ‚ ΠΏΡΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ, Π½ΠΎ Ρ‡Ρ‚ΠΎ Π±Ρ‹ с Π½ΠΈΠΌ познакомится, Π΄Π°Π²Π°ΠΉΡ‚Π΅ Π»ΡŽΠ±ΠΎΠΌΡƒ элСмСнту Π΄ΠΎΠ±Π°Π²ΠΈΠΌ содСрТаниС Π±Π»ΠΎΠΊΠ°, Ρ‡Ρ‚ΠΎ Π±Ρ‹ ΠΎΠ½ растянулся ΠΏΠΎ высотС, ΠΈ Ρƒ нас появилось пространство для позиционирования элСмСнтов.

<ul>
 <li>elem-1</li>
 <li>elem-2</li>
 <li>elem-3</li>
 <li>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Aut, blanditiis consectetur deserunt dolores eos error et explicabo iste iure labore laboriosam laudantium maxime neque nesciunt quo quos reiciendis suscipit unde!</li>
 <li>elem-5</li>
 <li>elem-6</li>
</ul>

Π§Ρ‚ΠΎ ΠΌΡ‹ Π²ΠΈΠ΄ΠΈΠΌ, Π΄Ρ€ΡƒΠ³ΠΈΠ΅ элСмСнты Ρ‚Π°ΠΊ ΠΆΠ΅ Ρ€Π°ΡΡ‚ΡΠ½ΡƒΠ»ΠΈΡΡŒ Π½Π° всю высоту ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°.

align-items: stretch, Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, элСмСнты Ρ€Π°ΡΡ‚ΡΠ³ΠΈΠ²Π°ΡŽΡ‚ΡΡ Π½Π° всю высоту flex-ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°.

align-items: stretch;

align-items: flex-start, элСмСнты ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΡƒΡŽΡ‚ΡΡ ΠΏΠΎ Π²Π΅Ρ€Ρ…Π½Π΅ΠΌΡƒ ΠΊΡ€Π°ΡŽ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°.

align-items: flex-start;

align-items: flex-end, элСмСнты ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΡƒΡŽΡ‚ΡΡ ΠΏΠΎ Π½ΠΈΠΆΠ½Π΅ΠΌΡƒ ΠΊΡ€Π°ΡŽ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°.

align-items: flex-end;

align-items: center, элСмСнты Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°ΡŽΡ‚ΡΡ ΠΏΠΎ Ρ†Π΅Π½Ρ‚Ρ€Ρƒ flex-ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°.

align-items: center;

align-items: baseline, Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π΅Ρ‚ элСмСнты ΠΏΠΎ Π±Π°Π·ΠΎΠ²ΠΎΠΉ оси. На Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ ΠΌΡ‹ Π½Π΅ ΡƒΠ²ΠΈΠ΄ΠΈΠΌ Ρ€Π°Π·Π½ΠΈΡ†Ρ‹ ΠΎΡ‚ значСния flex-start, Π½ΠΎ Ссли Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ, Π²Ρ‹ ΡƒΠ²ΠΈΠ΄ΠΈΡ‚Π΅ Π΄Ρ€ΡƒΠ³ΠΎΠΉ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚.

align-items: baseline;
<li><img src="https://unsplash.it/150/150?image=0"></li>

Π’ ΡƒΡ€ΠΎΠΊΠ΅ ΠΏΠΎΠΊΠ°Π·Π°Π», ΠΊΠ°ΠΊ Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Ρ‚ΡŒ flex-элСмСнты ΠΏΠΎ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΠΈ ΠΈ Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΠΈ, Ссли понравился ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π» подСлись ΠΈΠΌ Π² ΡΠΎΡ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… сСтях.

Π£Ρ€ΠΎΠΊ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΈΠ» Π“ΠΎΡ€Π΅Π»ΠΎΠ² ДСнис.

justify-content — CSS: каскадныС Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ стилСй

Бвойство CSS justify-content опрСдСляСт, ΠΊΠ°ΠΊ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ распрСдСляСт пространство ΠΌΠ΅ΠΆΠ΄Ρƒ элСмСнтами содСрТимого ΠΈ Π²ΠΎΠΊΡ€ΡƒΠ³ Π½ΠΈΡ… вдоль Π³Π»Π°Π²Π½ΠΎΠΉ оси Π³ΠΈΠ±ΠΊΠΎΠ³ΠΎ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° ΠΈ встроСнной оси ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° сСтки.

Π˜Π½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹ΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π½ΠΈΠΆΠ΅ дСмонстрируСт Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ значСния с использованиСм Grid Layout.

Π˜ΡΡ…ΠΎΠ΄Π½Ρ‹ΠΉ ΠΊΠΎΠ΄ этого ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° хранится Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ GitHub. Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ внСсти свой Π²ΠΊΠ»Π°Π΄ Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ², ΠΊΠ»ΠΎΠ½ΠΈΡ€ΡƒΠΉΡ‚Π΅ https: // github.com / mdn / interactive-examples ΠΈ ΠΎΡ‚ΠΏΡ€Π°Π²ΡŒΡ‚Π΅ Π½Π°ΠΌ запрос Π½Π° пСрСнос.

Π’Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅ выполняСтся послС примСнСния Π΄Π»ΠΈΠ½ ΠΈ автоматичСских ΠΏΠΎΠ»Π΅ΠΉ, Ρ‡Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ, Ссли Π² ΠΌΠ°ΠΊΠ΅Ρ‚Π΅ Flexbox Π΅ΡΡ‚ΡŒ хотя Π±Ρ‹ ΠΎΠ΄ΠΈΠ½ Π³ΠΈΠ±ΠΊΠΈΠΉ элСмСнт, с flex-grow , ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹ΠΌ ΠΎΡ‚ 0 , это Π½Π΅ повлияСт Π½Π° Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ свободного мСста.

 
justify-content: center;
justify-content: start;
justify-content: ΠΊΠΎΠ½Π΅Ρ†;
justify-content: Π³ΠΈΠ±ΠΊΠΈΠΉ старт;
justify-content: Π³ΠΈΠ±ΠΊΠΈΠΉ ΠΊΠΎΠ½Π΅Ρ†;
justify-content: left;
justify-content: ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ;





justify-content: Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ;


justify-content: ΠΏΡ€ΠΎΠ±Π΅Π» ΠΌΠ΅ΠΆΠ΄Ρƒ;
justify-content: пространство Π²ΠΎΠΊΡ€ΡƒΠ³;
justify-content: Ρ€Π°Π²Π½ΠΎΠΌΠ΅Ρ€Π½ΠΎ ΠΏΠΎ пространству;
justify-content: stretch;


justify-content: бСзопасный Ρ†Π΅Π½Ρ‚Ρ€;
justify-content: нСбСзопасный Ρ†Π΅Π½Ρ‚Ρ€;


justify-content: Π½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ;
justify-content: Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹ΠΉ;
justify-content: ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΎ;
  

ЗначСния

Π½Π°Ρ‡Π°Π»ΠΎ
ΠŸΡ€Π΅Π΄ΠΌΠ΅Ρ‚Ρ‹ ΡƒΠΏΠ°ΠΊΠΎΠ²Π°Π½Ρ‹ Π·Π°ΠΏΠΎΠ΄Π»ΠΈΡ†ΠΎ Π΄Ρ€ΡƒΠ³ с Π΄Ρ€ΡƒΠ³ΠΎΠΌ ΠΊ Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠΌΡƒ ΠΊΡ€Π°ΡŽ Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°ΡŽΡ‰Π΅Π³ΠΎ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° ΠΏΠΎ Π³Π»Π°Π²Π½ΠΎΠΉ оси.
ΠΊΠΎΠ½Π΅Ρ†
ΠŸΡ€Π΅Π΄ΠΌΠ΅Ρ‚Ρ‹ ΡƒΠΏΠ°ΠΊΠΎΠ²Π°Π½Ρ‹ Π·Π°ΠΏΠΎΠ΄Π»ΠΈΡ†ΠΎ Π΄Ρ€ΡƒΠ³ с Π΄Ρ€ΡƒΠ³ΠΎΠΌ ΠΏΠΎ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΡŽ ΠΊ Ρ‚ΠΎΡ€Ρ†Π΅Π²ΠΎΠΌΡƒ ΠΊΡ€Π°ΡŽ Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°ΡŽΡ‰Π΅Π³ΠΎ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° ΠΏΠΎ Π³Π»Π°Π²Π½ΠΎΠΉ оси.
Π³ΠΈΠ±ΠΊΠΈΠΉ старт
Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ ΡƒΠΏΠ°ΠΊΠΎΠ²Π°Π½Ρ‹ Π·Π°ΠΏΠΎΠ΄Π»ΠΈΡ†ΠΎ Π΄Ρ€ΡƒΠ³ с Π΄Ρ€ΡƒΠ³ΠΎΠΌ ΠΏΠΎ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΡŽ ΠΊ ΠΊΡ€Π°ΡŽ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° для выравнивания Π² зависимости ΠΎΡ‚ стороны основного запуска Π³ΠΈΠ±ΠΊΠΎΠ³ΠΎ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°.
Π­Ρ‚ΠΎ относится Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊ элСмСнтам Π³ΠΈΠ±ΠΊΠΎΠ³ΠΎ ΠΌΠ°ΠΊΠ΅Ρ‚Π°. Для элСмСнтов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ ΡΠ²Π»ΡΡŽΡ‚ΡΡ Π΄ΠΎΡ‡Π΅Ρ€Π½ΠΈΠΌΠΈ ΠΏΠΎ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡŽ ΠΊ Π³ΠΈΠ±ΠΊΠΎΠΌΡƒ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Ρƒ, это Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ обрабатываСтся ΠΊΠ°ΠΊ start .
Π³ΠΈΠ±ΠΊΠΈΠΉ ΠΊΠΎΠ½Π΅Ρ†
Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ ΡƒΠΏΠ°ΠΊΠΎΠ²Π°Π½Ρ‹ Π·Π°ΠΏΠΎΠ΄Π»ΠΈΡ†ΠΎ Π΄Ρ€ΡƒΠ³ с Π΄Ρ€ΡƒΠ³ΠΎΠΌ ΠΊ ΠΊΡ€Π°ΡŽ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° для выравнивания Π² зависимости ΠΎΡ‚ стороны основного ΠΊΠΎΠ½Ρ†Π° Π³ΠΈΠ±ΠΊΠΎΠ³ΠΎ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°.
Π­Ρ‚ΠΎ относится Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊ элСмСнтам Π³ΠΈΠ±ΠΊΠΎΠ³ΠΎ ΠΌΠ°ΠΊΠ΅Ρ‚Π°. Для элСмСнтов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ ΡΠ²Π»ΡΡŽΡ‚ΡΡ Π΄ΠΎΡ‡Π΅Ρ€Π½ΠΈΠΌΠΈ ΠΏΠΎ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡŽ ΠΊ Π³ΠΈΠ±ΠΊΠΎΠΌΡƒ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Ρƒ, это Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ обрабатываСтся ΠΊΠ°ΠΊ end .
Ρ†Π΅Π½Ρ‚Ρ€
ΠŸΡ€Π΅Π΄ΠΌΠ΅Ρ‚Ρ‹ ΡƒΠ»ΠΎΠΆΠ΅Π½Ρ‹ Π·Π°ΠΏΠΎΠ΄Π»ΠΈΡ†ΠΎ Π΄Ρ€ΡƒΠ³ с Π΄Ρ€ΡƒΠ³ΠΎΠΌ ΠΏΠΎ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΡŽ ΠΊ Ρ†Π΅Π½Ρ‚Ρ€Ρƒ Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°ΡŽΡ‰Π΅Π³ΠΎ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° вдоль Π³Π»Π°Π²Π½ΠΎΠΉ оси.
слСва
ΠŸΡ€Π΅Π΄ΠΌΠ΅Ρ‚Ρ‹ ΡƒΠΏΠ°ΠΊΠΎΠ²Π°Π½Ρ‹ Π·Π°ΠΏΠΎΠ΄Π»ΠΈΡ†ΠΎ Π΄Ρ€ΡƒΠ³ с Π΄Ρ€ΡƒΠ³ΠΎΠΌ ΠΊ Π»Π΅Π²ΠΎΠΌΡƒ ΠΊΡ€Π°ΡŽ Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°ΡŽΡ‰Π΅Π³ΠΎ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°. Если ось свойства Π½Π΅ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Π° встроСнной оси, это Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ вСсти сСбя ΠΊΠ°ΠΊ start .
ΠΏΡ€Π°Π²Ρ‹ΠΉ
ΠŸΡ€Π΅Π΄ΠΌΠ΅Ρ‚Ρ‹ ΡƒΠ»ΠΎΠΆΠ΅Π½Ρ‹ Π·Π°ΠΏΠΎΠ΄Π»ΠΈΡ†ΠΎ Π΄Ρ€ΡƒΠ³ с Π΄Ρ€ΡƒΠ³ΠΎΠΌ ΠΊ ΠΏΡ€Π°Π²ΠΎΠΌΡƒ ΠΊΡ€Π°ΡŽ Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°ΡŽΡ‰Π΅Π³ΠΎ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° ΠΏΠΎ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ оси. Если ось свойства Π½Π΅ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Π° встроСнной оси, это Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ вСсти сСбя ΠΊΠ°ΠΊ start .
Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ
Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ ΡƒΠΏΠ°ΠΊΠΎΠ²Π°Π½Ρ‹ Π² ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, ΠΊΠ°ΠΊ Ссли Π±Ρ‹ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ justify-content Π½Π΅ Π±Ρ‹Π»ΠΎ установлСно. Π­Ρ‚ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π²Π΅Π΄Π΅Ρ‚ сСбя ΠΊΠ°ΠΊ stretch Π² ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°Ρ… grid ΠΈ flex.
Π±Π°Π·ΠΎΠ²Ρ‹ΠΉ ΠΏΠ»Π°Π½
ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ Π±Π°Π·ΠΎΠ²Ρ‹ΠΉ ΠΏΠ»Π°Π½

послСдний Π±Π°Π·ΠΎΠ²Ρ‹ΠΉ ΠΏΠ»Π°Π½
ΠžΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅Ρ‚ участиС Π² Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠΈ ΠΏΠ΅Ρ€Π²ΠΎΠΉ ΠΈΠ»ΠΈ послСднСй Π±Π°Π·ΠΎΠ²ΠΎΠΉ Π»ΠΈΠ½ΠΈΠΈ: Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π΅Ρ‚ Π±Π°Π·ΠΎΠ²ΡƒΡŽ линию выравнивания ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ ΠΈΠ»ΠΈ послСднСго Π½Π°Π±ΠΎΡ€Π° Π±Π°Π·ΠΎΠ²Ρ‹Ρ… Π»ΠΈΠ½ΠΈΠΉ Π±Π»ΠΎΠΊΠ° с ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ Π±Π°Π·ΠΎΠ²ΠΎΠΉ Π»ΠΈΠ½ΠΈΠ΅ΠΉ Π² ΠΎΠ±Ρ‰Π΅ΠΌ ΠΏΠ΅Ρ€Π²ΠΎΠΌ ΠΈΠ»ΠΈ послСднСм Π½Π°Π±ΠΎΡ€Π΅ Π±Π°Π·ΠΎΠ²Ρ‹Ρ… Π»ΠΈΠ½ΠΈΠΉ всСх Π±Π»ΠΎΠΊΠΎΠ² Π² Π΅Π³ΠΎ Π³Ρ€ΡƒΠΏΠΏΠ΅ совмСстного использования Π±Π°Π·ΠΎΠ²Ρ‹Ρ… Π»ΠΈΠ½ΠΈΠΉ.
Π Π΅Π·Π΅Ρ€Π²Π½ΠΎΠ΅ Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅ для ΠΏΠ΅Ρ€Π²ΠΎΠΉ Π±Π°Π·ΠΎΠ²ΠΎΠΉ Π»ΠΈΠ½ΠΈΠΈ Π½Π°Ρ‡Π°Π»ΠΎ , для послСднСй Π±Π°Π·ΠΎΠ²ΠΎΠΉ Π»ΠΈΠ½ΠΈΠΈ ΠΊΠΎΠ½Π΅Ρ† .
ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΠΊ ΠΌΠ΅ΠΆΠ΄Ρƒ
Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ Ρ€Π°Π²Π½ΠΎΠΌΠ΅Ρ€Π½ΠΎ распрСдСлСны Π² ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π΅ выравнивания ΠΏΠΎ Π³Π»Π°Π²Π½ΠΎΠΉ оси. РасстояниС ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΏΠ°Ρ€ΠΎΠΉ сосСдних элСмСнтов ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎΠ΅. ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ элСмСнт находится Π·Π°ΠΏΠΎΠ΄Π»ΠΈΡ†ΠΎ с ΠΊΡ€Π°Π΅ΠΌ основного Π½Π°Ρ‡Π°Π»Π°, Π° послСдний элСмСнт — Π½Π° ΠΎΠ΄Π½ΠΎΠΌ ΡƒΡ€ΠΎΠ²Π½Π΅ с ΠΊΡ€Π°Π΅ΠΌ основного ΠΊΠΎΠ½Ρ†Π°.
пространство Π²ΠΎΠΊΡ€ΡƒΠ³
Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ Ρ€Π°Π²Π½ΠΎΠΌΠ΅Ρ€Π½ΠΎ распрСдСлСны Π² ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π΅ для выравнивания ΠΏΠΎ Π³Π»Π°Π²Π½ΠΎΠΉ оси.РасстояниС ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΏΠ°Ρ€ΠΎΠΉ сосСдних элСмСнтов ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎΠ΅. ΠŸΡƒΡΡ‚ΠΎΠ΅ пространство ΠΏΠ΅Ρ€Π΅Π΄ ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ ΠΈ послС послСднСго элСмСнта Ρ€Π°Π²Π½ΠΎ ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½Π΅ пространства ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΏΠ°Ρ€ΠΎΠΉ сосСдних элСмСнтов.
Ρ€Π°Π²Π½ΠΎΠΌΠ΅Ρ€Π½ΠΎ
Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ Ρ€Π°Π²Π½ΠΎΠΌΠ΅Ρ€Π½ΠΎ распрСдСлСны Π² ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π΅ для выравнивания ΠΏΠΎ Π³Π»Π°Π²Π½ΠΎΠΉ оси. РасстояниС ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΏΠ°Ρ€ΠΎΠΉ смСТных элСмСнтов, ΠΊΡ€Π°Π΅ΠΌ основного Π½Π°Ρ‡Π°Π»Π° ΠΈ ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ элСмСнтом, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΊΡ€Π°Π΅ΠΌ основного ΠΊΠΎΠ½Ρ†Π° ΠΈ послСдним элСмСнтом Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹.
растяТка

Если ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½Π΅Π½Π½Ρ‹ΠΉ Ρ€Π°Π·ΠΌΠ΅Ρ€ элСмСнтов вдоль Π³Π»Π°Π²Π½ΠΎΠΉ оси мСньшС Ρ€Π°Π·ΠΌΠ΅Ρ€Π° ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° выравнивания, Ρ€Π°Π·ΠΌΠ΅Ρ€ Π»ΡŽΠ±Ρ‹Ρ… элСмСнтов auto -size увСличиваСтся ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎ (Π½Π΅ ΠΏΡ€ΠΎΠΏΠΎΡ€Ρ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎ), ΠΏΡ€ΠΈ этом ΡΠΎΠ±Π»ΡŽΠ΄Π°ΡŽΡ‚ΡΡ ограничСния, Π½Π°Π»Π°Π³Π°Π΅ΠΌΡ‹Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ max-height. / max-width (ΠΈΠ»ΠΈ эквивалСнтная Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ), Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ Ρ€Π°Π·ΠΌΠ΅Ρ€ Ρ‚ΠΎΡ‡Π½ΠΎ заполнял ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ выравнивания вдоль Π³Π»Π°Π²Π½ΠΎΠΉ оси.

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅: stretch Π½Π΅ поддСрТиваСтся Π³ΠΈΠ±ΠΊΠΈΠΌΠΈ ΠΊΠΎΡ€ΠΎΠ±ΠΊΠ°ΠΌΠΈ (flexbox).

сСйф
Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ вмСстС с ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌ словом выравнивания. Если Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠ΅ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ слово ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ элСмСнт пСрСполняСт ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ выравнивания, вызывая ΠΏΠΎΡ‚Π΅Ρ€ΡŽ Π΄Π°Π½Π½Ρ‹Ρ…, элСмСнт вмСсто этого выравниваСтся, ΠΊΠ°ΠΊ Ссли Π±Ρ‹ Ρ€Π΅ΠΆΠΈΠΌ выравнивания Π±Ρ‹Π» start .
нСбСзопасно
Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ вмСстС с ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌ словом выравнивания. НСзависимо ΠΎΡ‚ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠ² элСмСнта ΠΈ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° выравнивания ΠΈ нСзависимо ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, ΠΌΠΎΠΆΠ΅Ρ‚ Π»ΠΈ ΠΏΡ€ΠΎΠΈΠ·ΠΎΠΉΡ‚ΠΈ ΠΏΠ΅Ρ€Π΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅, Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‰Π΅Π΅ ΠΏΠΎΡ‚Π΅Ρ€ΡŽ Π΄Π°Π½Π½Ρ‹Ρ…, Π·Π°Π΄Π°Π½Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ выравнивания ΡΠΎΠ±Π»ΡŽΠ΄Π°Π΅Ρ‚ΡΡ.
  Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ | <распрСдСлСниС-содСрТания> | <ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ пСрСполнСния>? [ | слСва | справа], Π³Π΄Π΅  = ΠΏΡ€ΠΎΠ±Π΅Π» ΠΌΠ΅ΠΆΠ΄Ρƒ | космичСскоС пространство | Ρ€Π°Π²Π½ΠΎΠΌΠ΅Ρ€Π½ΠΎ | Ρ€Π°ΡΡ‚ΡΠ½ΡƒΡ‚ΡŒ <ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅-пСрСполнСния> = нСбСзопасно | сСйф  = center | Π½Π°Ρ‡Π°Π»ΠΎ | ΠΊΠΎΠ½Π΅Ρ† | Π³ΠΈΠ±ΠΊΠΈΠΉ старт | flex-end  

Настройка распрСдСлСния Π³ΠΈΠ±ΠΊΠΈΡ… элСмСнтов

CSS
  #container {
  дисплСй: гибкий;
  justify-content: ΠΏΡ€ΠΎΠ±Π΅Π» ΠΌΠ΅ΠΆΠ΄Ρƒ;
}

#container> div {
  ΡˆΠΈΡ€ΠΈΠ½Π°: 100 пиксСлСй;
  высота: 100 пиксСлСй;
  Ρ„ΠΎΠ½: Π»ΠΈΠ½Π΅ΠΉΠ½Ρ‹ΠΉ Π³Ρ€Π°Π΄ΠΈΠ΅Π½Ρ‚ (-45deg, # 788cff, # b4c8ff);
}
  

HTML
JavaScript

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚

ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π² ΠΌΠ°ΠΊΠ΅Ρ‚Π΅ Flex

Π’Π°Π±Π»ΠΈΡ†Ρ‹ BCD Π·Π°Π³Ρ€ΡƒΠΆΠ°ΡŽΡ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅

ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π² ΠΌΠ°ΠΊΠ΅Ρ‚Π΅ сСтки

Π’Π°Π±Π»ΠΈΡ†Ρ‹ BCD Π·Π°Π³Ρ€ΡƒΠΆΠ°ΡŽΡ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅

justify-content | CSS-ΡƒΠ»ΠΎΠ²ΠΊΠΈ

Бвойство justify-content являСтся подсвойством модуля «Гибкая ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠ° Π±Π»ΠΎΠΊΠ°Β».

ΠžΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅Ρ‚ Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎ Π³Π»Π°Π²Π½ΠΎΠΉ оси. Он ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ Ρ€Π°ΡΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ лишнСС свободноС пространство, ΠΊΠΎΠ³Π΄Π° Π»ΠΈΠ±ΠΎ всС Π³ΠΈΠ±ΠΊΠΈΠ΅ элСмСнты Π² строкС Π½Π΅Π³ΠΈΠ±ΠΊΠΈΠ΅, Π»ΠΈΠ±ΠΎ Π³ΠΈΠ±ΠΊΠΈΠ΅, Π½ΠΎ достигли своСго максимального Ρ€Π°Π·ΠΌΠ΅Ρ€Π°. Он Ρ‚Π°ΠΊΠΆΠ΅ Π΄Π°Π΅Ρ‚ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ Π½Π°Π΄ Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅ΠΌ элСмСнтов, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ΠΈ выходят Π·Π° ΠΏΡ€Π΅Π΄Π΅Π»Ρ‹ строки.

Бвойство justify-content ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ ΠΏΡΡ‚ΡŒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ:

  • flex-start ( ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ): элСмСнты ΡƒΠΏΠ°ΠΊΠΎΠ²Ρ‹Π²Π°ΡŽΡ‚ΡΡ Π² сторону Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠΉ Π»ΠΈΠ½ΠΈΠΈ
  • flex-end : элСмСнты ΡƒΠΏΠ°ΠΊΠΎΠ²Ρ‹Π²Π°ΡŽΡ‚ΡΡ Π±Π»ΠΈΠΆΠ΅ ΠΊ ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠΉ Π»ΠΈΠ½ΠΈΠΈ
  • Ρ†Π΅Π½Ρ‚Ρ€ : элСмСнты располоТСны ΠΏΠΎ Ρ†Π΅Π½Ρ‚Ρ€Ρƒ Π»ΠΈΠ½ΠΈΠΈ
  • ΠΏΡ€ΠΎΠ±Π΅Π»-ΠΌΠ΅ΠΆΠ΄Ρƒ : ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚Ρ‹ Ρ€Π°Π²Π½ΠΎΠΌΠ΅Ρ€Π½ΠΎ Ρ€Π°ΡΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ΡΡ Π² строкС; ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ элСмСнт находится Π² Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠΉ строкС, послСдний элСмСнт Π² ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠΉ строкС
  • Π²ΠΎΠΊΡ€ΡƒΠ³ : ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚Ρ‹ Ρ€Π°Π²Π½ΠΎΠΌΠ΅Ρ€Π½ΠΎ распрСдСлСны ΠΏΠΎ Π»ΠΈΠ½ΠΈΠΈ с Ρ€Π°Π²Π½Ρ‹ΠΌ пространством Π²ΠΎΠΊΡ€ΡƒΠ³ Π½ΠΈΡ…
  • Ρ€Π°Π²Π½ΠΎΠΌΠ΅Ρ€Π½ΠΎ : элСмСнты Ρ€Π°ΡΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ΡΡ Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ расстояниС ΠΌΠ΅ΠΆΠ΄Ρƒ Π»ΡŽΠ±Ρ‹ΠΌΠΈ двумя сосСдними ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ выравнивания Π΄ΠΎ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° выравнивания ΠΈ послС послСднСго ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° выравнивания Π±Ρ‹Π»ΠΎ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹ΠΌ

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ рисунок ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ ΠΏΠΎΠ½ΡΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π½Π° самом Π΄Π΅Π»Π΅ Π΄Π΅Π»Π°Π΅Ρ‚ свойство justify-content :

Бинтаксис

  justify-content: flex-start | Π³ΠΈΠ±ΠΊΠΈΠΉ ΠΊΠΎΠ½Π΅Ρ† | Ρ†Π΅Π½Ρ‚Ρ€ | пространство ΠΌΠ΅ΠΆΠ΄Ρƒ | космичСскоС пространство | Ρ€Π°Π²Π½ΠΎΠΌΠ΅Ρ€Π½ΠΎ

. flex-item {
  justify-content: center;
}  

Π”Π΅ΠΌΠΎ

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ дСмонстрация ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚, ΠΊΠ°ΠΊ Π³ΠΈΠ±ΠΊΠΈΠ΅ элСмСнты Π²Π΅Π΄ΡƒΡ‚ сСбя Π² зависимости ΠΎΡ‚ значСния justify-content:

  • ΠšΡ€Π°ΡΠ½Ρ‹ΠΉ список установлСн Π½Π° flex-start
  • Π–Π΅Π»Ρ‚Ρ‹ΠΉ установлСн Π½Π° Π³ΠΈΠ±ΠΊΠΈΠΉ ΠΊΠΎΠ½Π΅Ρ†
  • Π‘ΠΈΠ½ΠΈΠΉ установлСн Π½Π° Ρ†Π΅Π½Ρ‚Ρ€
  • Π—Π΅Π»Π΅Π½Ρ‹ΠΉ установлСн Π½Π° , ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π» ΠΌΠ΅ΠΆΠ΄Ρƒ
  • Π ΠΎΠ·ΠΎΠ²Ρ‹ΠΉ установлСн Π½Π° ΠΏΡ€ΠΎΠ±Π΅Π»
  • Π‘Π²Π΅Ρ‚Π»ΠΎ-Π·Π΅Π»Π΅Π½Ρ‹ΠΉ установлСн Π½Π° Ρ€Π°Π²Π½ΠΎΠΌΠ΅Ρ€Π½ΠΎ

Π‘ΠΌ. Pen Flexbox ΠΈ justify-content ΠΎΡ‚ CSS-Tricks (@ css-tricks) Π½Π° CodePen.

Π‘ΠΎΠΏΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹

Π”Ρ€ΡƒΠ³ΠΈΠ΅ рСсурсы

ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°

ΠΠ°ΡΡ‚ΠΎΠ»ΡŒΠ½Ρ‹ΠΉ ПК
Chrome Firefox IE Edge Safari
21 * 28 11
12
 
6,1
Android Chrome Android Firefox Android iOS Safari
88 83 4. 4 7,0-7,1 *

Π‘Ρ€Π°ΡƒΠ·Π΅Ρ€ Blackberry 10+ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Π½ΠΎΠ²Ρ‹ΠΉ синтаксис.

По ΡΠΎΡΡ‚ΠΎΡΠ½ΠΈΡŽ Π½Π° послСднСС ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ Π·Π° Π΄Π΅ΠΊΠ°Π±Ρ€ΡŒ 2018 Π³., justify-content: Ρ€Π°Π²Π½ΠΎΠΌΠ΅Ρ€Π½ΠΎ ΠΏΠΎ пространству; ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ. На Π½Π΅ΠΌ Π΅ΡΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‡ΠΈΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ спСцификации.

ΠΠ°ΡΡ‚ΠΎΠ»ΡŒΠ½Ρ‹ΠΉ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€
Chrome Firefox IE Edge Safari
60 52 НСт 79 79 ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ
Android Chrome Android Firefox Android iOS Safari
88 83 81 11. 0-11,2

Для получСния Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ ΡΠΌΠ΅ΡˆΠΈΠ²Π°Ρ‚ΡŒ синтаксисы, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π»ΡƒΡ‡ΡˆΡƒΡŽ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°, ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ΡΡŒ ΠΊ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ (CSS-Tricks) ΠΈΠ»ΠΈ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ (DevOpera).

ПолноС руководство ΠΏΠΎ Flexbox

НачнСм с ΠΎΡ‡Π΅Π½ΡŒ простого ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°, Ρ€Π΅ΡˆΠ°ΡŽΡ‰Π΅Π³ΠΎ ΠΏΠΎΡ‡Ρ‚ΠΈ ΠΏΠΎΠ²ΡΠ΅Π΄Π½Π΅Π²Π½ΡƒΡŽ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ: идСальноС Ρ†Π΅Π½Ρ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅. НСт Π½ΠΈΡ‡Π΅Π³ΠΎ ΠΏΡ€ΠΎΡ‰Π΅, Ссли Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ flexbox.

  .parent {
  дисплСй: гибкий;
  высота: 300 пиксСлСй; / * Или Ρ‡Ρ‚ΠΎ ΡƒΠ³ΠΎΠ΄Π½ΠΎ * /
}

.child {
  ΡˆΠΈΡ€ΠΈΠ½Π°: 100 пиксСлСй; / * Или Ρ‡Ρ‚ΠΎ ΡƒΠ³ΠΎΠ΄Π½ΠΎ * /
  высота: 100 пиксСлСй; / * Или Ρ‡Ρ‚ΠΎ ΡƒΠ³ΠΎΠ΄Π½ΠΎ * /
  ΠΌΠ°Ρ€ΠΆΠ°: Π°Π²Ρ‚ΠΎ; / * Магия! * /
}  

Π­Ρ‚ΠΎ основано Π½Π° Ρ‚ΠΎΠΌ Ρ„Π°ΠΊΡ‚Π΅, Ρ‡Ρ‚ΠΎ для поля установлСно Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ auto Π² Π³ΠΈΠ±ΠΊΠΎΠΌ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π΅ ΠΏΠΎΠ³Π»ΠΎΡ‰Π°Π΅Ρ‚ лишнСС пространство.Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, установка Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ поля auto сдСлаСт элСмСнт идСально Ρ†Π΅Π½Ρ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌ ΠΏΠΎ ΠΎΠ±Π΅ΠΈΠΌ осям.

А Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡΡ Π΅Ρ‰Π΅ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ свойствами. Рассмотрим список ΠΈΠ· 6 элСмСнтов, всС с фиксированными Ρ€Π°Π·ΠΌΠ΅Ρ€Π°ΠΌΠΈ, Π½ΠΎ с Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒΡŽ автоматичСского измСнСния Ρ€Π°Π·ΠΌΠ΅Ρ€Π°. ΠœΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ΠΈ Π±Ρ‹Π»ΠΈ Ρ€Π°Π²Π½ΠΎΠΌΠ΅Ρ€Π½ΠΎ распрСдСлСны ΠΏΠΎ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½ΠΎΠΉ оси, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ Ρ€Π°Π·ΠΌΠ΅Ρ€Π° Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π° всС Ρ…ΠΎΡ€ΠΎΡˆΠΎ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Π»ΠΎΡΡŒ ΠΈ Π±Π΅Π· ΠΌΠ΅Π΄ΠΈΠ°-запросов.

  .flex-container {
  / * Π‘Π½Π°Ρ‡Π°Π»Π° ΠΌΡ‹ создаСм контСкст Π³ΠΈΠ±ΠΊΠΎΠ³ΠΎ ΠΌΠ°ΠΊΠ΅Ρ‚Π° * /
  дисплСй: гибкий;

  / * Π—Π°Ρ‚Π΅ΠΌ опрСдСляСм Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠΎΡ‚ΠΎΠΊΠ°
     ΠΈ Ссли ΠΌΡ‹ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΠΌ ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚Π°ΠΌ ΠΎΠ±Π΅Ρ€Π½ΡƒΡ‚ΡŒ
   * ΠŸΠΎΠΌΠ½ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ это Ρ‚ΠΎ ΠΆΠ΅ самоС, Ρ‡Ρ‚ΠΎ:
   * flex-direction: ряд;
   * flex-wrap: ΠΎΠ±Π΅Ρ€Ρ‚ΠΊΠ°;
   * /
  flex-flow: пСрСнос строк;

  / * Π—Π°Ρ‚Π΅ΠΌ ΠΌΡ‹ опрСдСляСм, ΠΊΠ°ΠΊ распрСдСляСтся ΠΎΡΡ‚Π°Π²ΡˆΠ΅Π΅ΡΡ пространство * /
  justify-content: пространство Π²ΠΎΠΊΡ€ΡƒΠ³;
}  

Π“ΠΎΡ‚ΠΎΠ²ΠΎ.ВсС ΠΎΡΡ‚Π°Π»ΡŒΠ½ΠΎΠ΅ - лишь Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ стилистичСскиС сообраТСния. НиТС прСдставлСна ​​ручка с этим ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠΌ. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΠ΅Ρ€Π΅ΠΉΠ΄ΠΈΡ‚Π΅ Π½Π° CodePen ΠΈ ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΎΠΊΠΎΠ½, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΠΈΠ·ΠΎΠΉΠ΄Π΅Ρ‚.

Π”Π°Π²Π°ΠΉ ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ Ρ‡Ρ‚ΠΎ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ Π΅Ρ‰Π΅. ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²ΡŒΡ‚Π΅, Ρ‡Ρ‚ΠΎ Ρƒ нас Π΅ΡΡ‚ΡŒ Π²Ρ‹Ρ€ΠΎΠ²Π½Π΅Π½Π½Ρ‹ΠΉ ΠΏΠΎ ΠΏΡ€Π°Π²ΠΎΠΌΡƒ ΠΊΡ€Π°ΡŽ элСмСнт Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΠΈ Π² самом Π²Π΅Ρ€Ρ…Ρƒ нашСго Π²Π΅Π±-сайта, Π½ΠΎ ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ располагался ΠΏΠΎ Ρ†Π΅Π½Ρ‚Ρ€Ρƒ Π½Π° экранах срСднСго Ρ€Π°Π·ΠΌΠ΅Ρ€Π° ΠΈ Π±Ρ‹Π» ΠΎΠ΄Π½ΠΎΠΊΠΎΠ»ΠΎΠ½Π½Ρ‹ΠΌ Π½Π° Π½Π΅Π±ΠΎΠ»ΡŒΡˆΠΈΡ… устройствах. Достаточно просто.

  / * Π‘ΠΎΠ»ΡŒΡˆΠΎΠΉ * /
.navigation {
  дисплСй: гибкий;
  flex-flow: пСрСнос строк;
  / * Π­Ρ‚ΠΎ Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π΅Ρ‚ элСмСнты ΠΏΠΎ ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠΉ строкС Π½Π° Π³Π»Π°Π²Π½ΠΎΠΉ оси * /
  justify-content: Π³ΠΈΠ±ΠΊΠΈΠΉ ΠΊΠΎΠ½Π΅Ρ†;
}

/ * Π‘Ρ€Π΅Π΄Π½ΠΈΠ΅ экраны * /
@media all and (max-width: 800px) {
  .навигация {
    / * На экранах срСднСго Ρ€Π°Π·ΠΌΠ΅Ρ€Π° ΠΌΡ‹ Ρ†Π΅Π½Ρ‚Ρ€ΠΈΡ€ΡƒΠ΅ΠΌ Π΅Π³ΠΎ, Ρ€Π°Π²Π½ΠΎΠΌΠ΅Ρ€Π½ΠΎ распрСдСляя пустоС пространство Π²ΠΎΠΊΡ€ΡƒΠ³ элСмСнтов * /
    justify-content: пространство Π²ΠΎΠΊΡ€ΡƒΠ³;
  }
}

/ * МалСнькиС экраны * /
@media all and (max-width: 500 пиксСлСй) {
  .navigation {
    / * На ΠΌΠ°Π»Π΅Π½ΡŒΠΊΠΈΡ… экранах ΠΌΡ‹ большС Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ строки, Π° столбСц * /
    flex-direction: столбСц;
  }
}  

Π”Π°Π²Π°ΠΉΡ‚Π΅ ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ Ρ‡Ρ‚ΠΎ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ Π΅Ρ‰Π΅ Π»ΡƒΡ‡ΡˆΠ΅, ΠΏΠΎΠΈΠ³Ρ€Π°Π² с Π³ΠΈΠ±ΠΊΠΈΠΌΠΈ элСмСнтами! Как насчСт ΠΌΠ°ΠΊΠ΅Ρ‚Π° ΠΈΠ· Ρ‚Ρ€Π΅Ρ… столбцов, сначала для ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… устройств, с ΠΏΠΎΠ»Π½ΠΎΡ€Π°Π·ΠΌΠ΅Ρ€Π½Ρ‹ΠΌ Π²Π΅Ρ€Ρ…Π½ΠΈΠΌ ΠΈ Π½ΠΈΠΆΠ½ΠΈΠΌ ΠΊΠΎΠ»ΠΎΠ½Ρ‚ΠΈΡ‚ΡƒΠ»Π°ΠΌΠΈ. И нСзависимо ΠΎΡ‚ исходного порядка.

  .wrapper {
  дисплСй: гибкий;
  flex-flow: пСрСнос строк;
}

/ * ΠœΡ‹ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅ΠΌ, Ρ‡Ρ‚ΠΎ всС элСмСнты Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΈΠΌΠ΅Ρ‚ΡŒ 100% ΡˆΠΈΡ€ΠΈΠ½Ρƒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π³ΠΈΠ±ΠΊΠΎΠΉ основы * /
.wrapper> * {
  Π³ΠΈΠ±ΠΊΠΎΡΡ‚ΡŒ: 1100%;
}

/ * ΠœΡ‹ полагаСмся Π½Π° порядок источников для ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π°, ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ Π½Π° ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Π΅ устройства
 * Π² Ρ‚Π°ΠΊΠΎΠΌ случаС:
 * 1. Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ
 * 2. ΡΡ‚Π°Ρ‚ΡŒΡ
 * 3. Π² сторону 1
 * 4. Π² сторону 2
 * 5. Π½ΠΈΠΆΠ½ΠΈΠΉ ΠΊΠΎΠ»ΠΎΠ½Ρ‚ΠΈΡ‚ΡƒΠ»
 * /

/ * Π‘Ρ€Π΅Π΄Π½ΠΈΠ΅ экраны * /
@media all and (min-width: 600px) {
  / * ΠœΡ‹ Π³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎΠ±Π΅ΠΈΠΌ Π±ΠΎΠΊΠΎΠ²Ρ‹ΠΌ панСлям Ρ€Π°Π·Π΄Π΅Π»ΡΡ‚ΡŒ строку * /
  .aside {flex: 1 Π°Π²Ρ‚ΠΎ; }
}

/ * Π‘ΠΎΠ»ΡŒΡˆΠΈΠ΅ экраны * /
@media all and (min-width: 800px) {
  / * ΠœΡ‹ мСняСм порядок ΠΏΠ΅Ρ€Π²ΠΎΠΉ Π±ΠΎΠΊΠΎΠ²ΠΎΠΉ ΠΏΠ°Π½Π΅Π»ΠΈ ΠΈ Π³Π»Π°Π²Π½ΠΎΠΉ
   * И скаТитС основному элСмСнту, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ Π·Π°Π½ΠΈΠΌΠ°Π» Π²Π΄Π²ΠΎΠ΅ Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ ΡˆΠΈΡ€ΠΈΠ½Ρƒ, Ρ‡Π΅ΠΌ Π΄Π²Π΅ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Π±ΠΎΠΊΠΎΠ²Ρ‹Π΅ ΠΏΠ°Π½Π΅Π»ΠΈ.
   * /
  .основной {flex: 2 0px; }
  .aside-1 {порядок: 1; }
  .main {порядок: 2; }
  .aside-2 {порядок: 3; }
  .footer {порядок: 4; }
}  

Flex Β· Bootstrap

Быстро управляйтС ΠΌΠ°ΠΊΠ΅Ρ‚ΠΎΠΌ, Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΈ Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ столбцов сСтки, Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΠ΅ΠΉ, ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°ΠΌΠΈ ΠΈ ΠΌΠ½ΠΎΠ³ΠΈΠΌ Π΄Ρ€ΡƒΠ³ΠΈΠΌ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ Π½Π°Π±ΠΎΡ€Π° Π³ΠΈΠ±ΠΊΠΈΡ… ΡƒΡ‚ΠΈΠ»ΠΈΡ‚ flexbox. Для Π±ΠΎΠ»Π΅Π΅ слоТных Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚ΡŒΡΡ собствСнный CSS.

Π’ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π³ΠΈΠ±ΠΊΠΎΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅

ΠŸΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚Π΅ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹ display для создания ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° flexbox ΠΈ трансформируйтС прямых Π΄ΠΎΡ‡Π΅Ρ€Π½ΠΈΡ… элСмСнтов Π² Π³ΠΈΠ±ΠΊΠΈΠ΅ элСмСнты.Π“ΠΈΠ±ΠΊΠΈΠ΅ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Ρ‹ ΠΈ элСмСнты ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… свойств гибкости.

  
Π― ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ Flexbox!

Π― встроСнный ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ Flexbox!

  
Π― встроСнный ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ Flexbox!

АдаптивныС Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ для .d-flex ΠΈ .d-inline-flex .

  • .d-flex
  • .d-inline-flex
  • .d-sm-flex
  • .d-sm-inline-flex
  • .d-md-flex
  • .d-md-inline-flex
  • .d-lg-flex
  • . d-lg-inline-flex
  • .d-xl-flex
  • .d-xl-inline-flex

НаправлСниС

УстановитС Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π³ΠΈΠ±ΠΊΠΈΡ… элСмСнтов Π² Π³ΠΈΠ±ΠΊΠΎΠΌ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚ направлСния. Π’ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ случаСв Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΎΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΉ класс здСсь, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ , строка .Однако Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΡ‚ΠΎΠ»ΠΊΠ½ΡƒΡ‚ΡŒΡΡ с ситуациями, ΠΊΠΎΠ³Π΄Π° Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ явно ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ это Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π°Π΄Π°ΠΏΡ‚ΠΈΠ²Π½Ρ‹Π΅ ΠΌΠ°ΠΊΠ΅Ρ‚Ρ‹).

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ .flex-row для установки Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ направлСния (ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅) ΠΈΠ»ΠΈ .flex-row-reverse , Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π°Ρ‡Π°Ρ‚ΡŒ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½ΠΎΠ΅ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ с ΠΏΡ€ΠΎΡ‚ΠΈΠ²ΠΎΠΏΠΎΠ»ΠΎΠΆΠ½ΠΎΠΉ стороны.

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт 1

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт 2

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ гибкости 3

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт 1

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт 2

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ гибкости 3

  
Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ Flex 1
Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ Flex 2
Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ Flex 3
Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ Flex 1
Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ Flex 2
Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ Flex 3

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ . flex-column , Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π·Π°Π΄Π°Ρ‚ΡŒ Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠ΅ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅, ΠΈΠ»ΠΈ .flex-column-reverse , Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π°Ρ‡Π°Ρ‚ΡŒ Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠ΅ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ с ΠΏΡ€ΠΎΡ‚ΠΈΠ²ΠΎΠΏΠΎΠ»ΠΎΠΆΠ½ΠΎΠΉ стороны.

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт 1

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт 2

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ гибкости 3

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт 1

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт 2

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ гибкости 3

  
Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ Flex 1
Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ Flex 2
Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ Flex 3
Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ Flex 1
Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ Flex 2
Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ Flex 3

АдаптивныС Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ для flex-direction .

  • .flex-ряд
  • .flex-row-reverse
  • . Гибкая ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°
  • .flex-ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°-рСвСрс
  • .flex-sm-row
  • .flex-sm-row-reverse
  • .flex-sm-ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°
  • . flex-sm-ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°-рСвСрс
  • .flex-md-row
  • .flex-md-row-reverse
  • .Flex-MD-столбСц
  • .flex-md-ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°-рСвСрс
  • .flex-lg-row
  • .flex-lg-row-reverse
  • .flex-lg-ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°
  • .flex-lg-ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°-рСвСрс
  • .flex-xl-row
  • .flex-xl-row-reverse
  • .flex-xl-ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°
  • .flex-xl-column-reverse

ОбоснованиС содСрТания

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹ justify-content Π² ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°Ρ… flexbox, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅ Π³ΠΈΠ±ΠΊΠΈΡ… элСмСнтов ΠΏΠΎ Π³Π»Π°Π²Π½ΠΎΠΉ оси (ось x для Π½Π°Ρ‡Π°Π»Π°, ось y, Ссли flex-direction: столбСц ).Π’Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ ΠΈΠ· Π½Π°Ρ‡Π°Π»ΠΎ (Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ), ΠΊΠΎΠ½Π΅Ρ† , Ρ†Π΅Π½Ρ‚Ρ€ , ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΈΠ»ΠΈ ΠΎΠΊΠΎΠ»ΠΎ .

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ гибкости

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

  
...
...
...
...
...

Π’Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ ΠΎΡ‚Π²Π΅Ρ‚Π° Ρ‚Π°ΠΊΠΆΠ΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ для justify-content .

  • .justify-content-start
  • .justify-content-end
  • .justify-content-center
  • .justify-content-ΠΌΠ΅ΠΆΠ΄Ρƒ
  • .justify-content-around
  • .justify-content-sm-start
  • . justify-content-sm-end
  • .justify-content-sm-center
  • .justify-content-sm-between
  • .justify-content-sm-around
  • .justify-content-md-start
  • .justify-content-md-end
  • .justify-content-md-center
  • .justify-content-md-ΠΌΠ΅ΠΆΠ΄Ρƒ
  • .justify-content-md-ΠΎΠΊΠΎΠ»ΠΎ
  • .justify-content-lg-start
  • .justify-content-lg-end
  • .justify-content-lg-center
  • .justify-content-lg-ΠΌΠ΅ΠΆΠ΄Ρƒ
  • .justify-content-lg-about
  • .justify-content-xl-start
  • .justify-content-xl-end
  • .justify-content-xl-center
  • .justify-content-xl-ΠΌΠ΅ΠΆΠ΄Ρƒ
  • .justify-content-xl-around

Π’Ρ‹Ρ€ΠΎΠ²Π½ΡΡ‚ΡŒ элСмСнты

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹ align-items Π² ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°Ρ… flexbox, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅ Π³ΠΈΠ±ΠΊΠΈΡ… элСмСнтов ΠΏΠΎ ΠΏΠΎΠΏΠ΅Ρ€Π΅Ρ‡Π½ΠΎΠΉ оси (ось Y для Π½Π°Ρ‡Π°Π»Π°, ось X, Ссли flex-direction: column ). Π’Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ Π½Π°Ρ‡Π°Π»ΠΎ , ΠΊΠΎΠ½Π΅Ρ† , Ρ†Π΅Π½Ρ‚Ρ€ , Π±Π°Π·ΠΎΠ²Ρ‹ΠΉ ΠΏΠ»Π°Π½ ΠΈΠ»ΠΈ растяТСниС (Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ).

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

  
...
...
...
...
...

АдаптивныС Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ для align-items .

  • .align-items-start
  • .align-items-end
  • .align-items-center
  • . align-items-baseline
  • .align-items-stretch
  • .align-items-sm-start
  • .Π²Ρ‹Ρ€ΠΎΠ²Π½ΡΡ‚ΡŒ элСмСнты-sm-ΠΊΠΎΠ½Π΅Ρ†
  • .align-items-sm-center
  • .align-items-sm-baseline
  • .align-items-sm-stretch
  • .align-items-md-start
  • .align-items-md-end
  • .align-items-md-center
  • .align-items-md-baseline
  • .align-items-md-stretch
  • .align-items-lg-start
  • .Π²Ρ‹Ρ€ΠΎΠ²Π½ΡΡ‚ΡŒ элСмСнты-LG-ΠΊΠΎΠ½Π΅Ρ†
  • .align-items-lg-center
  • .align-items-lg-baseline
  • .align-items-LG-stretch
  • .align-items-xl-start
  • .align-items-xl-end
  • .align-items-xl-center
  • . align-items-xl-baseline
  • .align-items-xl-stretch

Π‘Π°ΠΌΠΎΠ²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹ align-self для элСмСнтов flexbox, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ½Π΄ΠΈΠ²ΠΈΠ΄ΡƒΠ°Π»ΡŒΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΈΡ… Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎ ΠΏΠΎΠΏΠ΅Ρ€Π΅Ρ‡Π½ΠΎΠΉ оси (ось y для Π½Π°Ρ‡Π°Π»Π°, ось x, Ссли flex-direction: столбСц ).Π’Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Ρ‚Π΅Ρ… ΠΆΠ΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ², Ρ‡Ρ‚ΠΎ ΠΈ align-items : start , end , center , baseline ΠΈΠ»ΠΈ stretch (Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ).

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π’Ρ‹Ρ€ΠΎΠ²Π½Π΅Π½Π½Ρ‹ΠΉ Π³ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π’Ρ‹Ρ€ΠΎΠ²Π½Π΅Π½Π½Ρ‹ΠΉ Π³ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π’Ρ‹Ρ€ΠΎΠ²Π½Π΅Π½Π½Ρ‹ΠΉ Π³ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π’Ρ‹Ρ€ΠΎΠ²Π½Π΅Π½Π½Ρ‹ΠΉ Π³ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π’Ρ‹Ρ€ΠΎΠ²Π½Π΅Π½Π½Ρ‹ΠΉ Π³ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

  
Π’Ρ‹Ρ€ΠΎΠ²Π½Π΅Π½Π½Ρ‹ΠΉ Π³ΠΈΠ±ΠΊΠΈΠΉ элСмСнт
Π’Ρ‹Ρ€ΠΎΠ²Π½Π΅Π½Π½Ρ‹ΠΉ Π³ΠΈΠ±ΠΊΠΈΠΉ элСмСнт
Π’Ρ‹Ρ€ΠΎΠ²Π½Π΅Π½Π½Ρ‹ΠΉ Π³ΠΈΠ±ΠΊΠΈΠΉ элСмСнт
Π’Ρ‹Ρ€ΠΎΠ²Π½Π΅Π½Π½Ρ‹ΠΉ Π³ΠΈΠ±ΠΊΠΈΠΉ элСмСнт
Aligned flex item

АдаптивныС Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ для align-self .

  • .align-самозапуск
  • .align-self-end
  • . Π’Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅-самоцСнтрированиС
  • .align-self-baseline
  • . Π’Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅-саморСз
  • .align-self-sm-start
  • .align-self-sm-end
  • .align-self-sm-Ρ†Π΅Π½Ρ‚Ρ€
  • .align-self-sm-baseline
  • .align-self-sm-stretch
  • .Π²Ρ‹Ρ€ΠΎΠ²Π½ΡΡ‚ΡŒ-само-MD-старт
  • .align-self-md-end
  • .align-self-md-center
  • .align-self-md-baseline
  • .align-self-md-stretch
  • .align-self-lg-start
  • .align-self-end
  • .align-self-lg-center
  • .align-self-lg-baseline
  • .align-self-lg-stretch
  • . выровняйтС-self-xl-start
  • .align-self-xl-end
  • .align-self-xl-center
  • .align-self-xl-baseline
  • .align-self-xl-stretch

АвтоматичСскиС поля

Flexbox ΠΌΠΎΠΆΠ΅Ρ‚ Π΄Π΅Π»Π°Ρ‚ΡŒ довольно ΡƒΠ΄ΠΈΠ²ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ Π²Π΅Ρ‰ΠΈ, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ ΡΠΌΠ΅ΡˆΠΈΠ²Π°Π΅Ρ‚Π΅ Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅ гибкости с автоматичСскими полями. НиТС ΠΏΠΎΠΊΠ°Π·Π°Π½Ρ‹ Ρ‚Ρ€ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° управлСния Π³ΠΈΠ±ΠΊΠΈΠΌΠΈ элСмСнтами с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ автоматичСских ΠΏΠΎΠ»Π΅ΠΉ: ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ (Π±Π΅Π· автоматичСского поля), смСщСниС Π΄Π²ΡƒΡ… элСмСнтов Π²ΠΏΡ€Π°Π²ΠΎ (.mr-auto ) ΠΈ сдвинув Π΄Π²Π° элСмСнта Π²Π»Π΅Π²ΠΎ ( .ml-auto ).

К соТалСнию, IE10 ΠΈ IE11 Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ автоматичСскиС поля для Π³ΠΈΠ±ΠΊΠΈΡ… элСмСнтов, Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ элСмСнт ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΈΠΌΠ΅Π΅Ρ‚ нСстандартноС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ justify-content . Π‘ΠΌ. Π­Ρ‚ΠΎΡ‚ ΠΎΡ‚Π²Π΅Ρ‚ StackOverflow для получСния Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… свСдСний.

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

  
Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ Flex
Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ Flex
Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ Flex
Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ Flex
Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ Flex
Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ Flex
Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ Flex
Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ Flex
Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ Flex

Π‘ элСмСнтами выравнивания

Π’Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎ пСрСмСститС ΠΎΠ΄ΠΈΠ½ Π³ΠΈΠ±ΠΊΠΈΠΉ элСмСнт Π²Π²Π΅Ρ€Ρ… ΠΈΠ»ΠΈ Π²Π½ΠΈΠ· ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°, смСшав align-items , flex-direction: column ΠΈ margin-top: auto ΠΈΠ»ΠΈ margin-bottom: auto .

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

  
Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ Flex
Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ Flex
Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ Flex
Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ Flex
Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ Flex
Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ Flex

ΠžΠ±Π΅Ρ€Ρ‚ΠΊΠ°

Π˜Π·ΠΌΠ΅Π½ΠΈΡ‚Π΅ способ пСрСноса Π³ΠΈΠ±ΠΊΠΈΡ… элСмСнтов Π² Π³ΠΈΠ±ΠΊΠΈΠΉ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€.Π’Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ Π±Π΅Π· ΡƒΠΏΠ°ΠΊΠΎΠ²ΠΊΠΈ (ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅) с .flex-nowrap , ΠΎΠ±Π΅Ρ€Ρ‚Ρ‹Π²Π°Π½ΠΈΠ΅ с .flex-wrap ΠΈΠ»ΠΈ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠ΅ ΠΎΠ±Π΅Ρ€Ρ‚Ρ‹Π²Π°Π½ΠΈΠ΅ с .flex-wrap-reverse .

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

  
...

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

  
. ..

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

  
...

АдаптивныС Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ для flex-wrap .

  • .flex-nowrap
  • . Гибкая ΠΏΠ»Π΅Π½ΠΊΠ°
  • .flex-wrap-reverse
  • .flex-sm-nowrap
  • .flex-sm-ΠΏΠ»Π΅Π½ΠΊΠ°
  • .flex-sm-wrap-reverse
  • .flex-md-nowrap
  • .flex-md-wrap
  • .flex-md-wrap-reverse
  • . flex-lg-nowrap
  • .flex-lg-wrap
  • .Flex-LG-Wrap-РСвСрс
  • .flex-xl-nowrap
  • .flex-xl-wrap
  • .flex-xl-wrap-reverse

Π—Π°ΠΊΠ°Π·Π°Ρ‚ΡŒ

Π˜Π·ΠΌΠ΅Π½ΠΈΡ‚Π΅ порядок ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… Π³ΠΈΠ±ΠΊΠΈΡ… элСмСнтов visual с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΡƒΡ‚ΠΈΠ»ΠΈΡ‚ порядка порядка . ΠœΡ‹ прСдоставляСм Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ создания элСмСнта ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ ΠΈΠ»ΠΈ послСдним, Π° Ρ‚Π°ΠΊΠΆΠ΅ сброс для использования порядка DOM. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ порядок ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ любоС цСлочислСнноС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, 5 ), Π΄ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ собствСнный CSS для Π»ΡŽΠ±Ρ‹Ρ… Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Ρ… Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ.

ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ элСмСнт гибкости

Π’Ρ‚ΠΎΡ€ΠΎΠΉ Π³ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π’Ρ€Π΅Ρ‚ΠΈΠΉ Π³ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

  
ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ Π³ΠΈΠ±ΠΊΠΈΠΉ элСмСнт
Π’Ρ‚ΠΎΡ€ΠΎΠΉ Π³ΠΈΠ±ΠΊΠΈΠΉ элСмСнт
Π’Ρ€Π΅Ρ‚ΠΈΠΉ Π³ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

АдаптивныС Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ для Π·Π°ΠΊΠ°Π·Π° .

  • . Π—Π°ΠΊΠ°Π·-0
  • . Π—Π°ΠΊΠ°Π·-1
  • . Π—Π°ΠΊΠ°Π·-2
  • . Π—Π°ΠΊΠ°Π·-3
  • .Π·Π°ΠΊΠ°Π·-4
  • . Π—Π°ΠΊΠ°Π·-5
  • . Π—Π°ΠΊΠ°Π·-6
  • . Π—Π°ΠΊΠ°Π·-7
  • . Π—Π°ΠΊΠ°Π·-8
  • . Π—Π°ΠΊΠ°Π·-9
  • . Π—Π°ΠΊΠ°Π·-10
  • . Π—Π°ΠΊΠ°Π·-11
  • . Π—Π°ΠΊΠ°Π·-12
  • . Π—Π°ΠΊΠ°Π·-см-0
  • . Π—Π°ΠΊΠ°Π·-см-1
  • . Π—Π°ΠΊΠ°Π·-см-2
  • . Π—Π°ΠΊΠ°Π·-см-3
  • .Π·Π°ΠΊΠ°Π·-см-4
  • . Π—Π°ΠΊΠ°Π·-см-5
  • . Π—Π°ΠΊΠ°Π·-см-6
  • . Π—Π°ΠΊΠ°Π·-см-7
  • . Π—Π°ΠΊΠ°Π·-см-8
  • . Π—Π°ΠΊΠ°Π·-см-9
  • . Π—Π°ΠΊΠ°Π·-см-10
  • . Π—Π°ΠΊΠ°Π·-см-11
  • . Π—Π°ΠΊΠ°Π·-см-12
  • .order-md-0
  • .order-md-1
  • . Π—Π°ΠΊΠ°Π·-md-2
  • .Π·Π°ΠΊΠ°Π·-md-3
  • . Π—Π°ΠΊΠ°Π·-ΠΌΠ΄-4
  • . Π—Π°ΠΊΠ°Π·-md-5
  • . Π—Π°ΠΊΠ°Π·-md-6
  • . Π—Π°ΠΊΠ°Π·-md-7
  • . Π—Π°ΠΊΠ°Π·-md-8
  • . Π—Π°ΠΊΠ°Π·-md-9
  • .order-md-10
  • . Π—Π°ΠΊΠ°Π·-md-11
  • . Π—Π°ΠΊΠ°Π·-md-12
  • .order-lg-0
  • .order-lg-1
  • .Π·Π°ΠΊΠ°Π·-LG-2
  • .order-lg-3
  • .order-lg-4
  • .order-lg-5
  • . Π—Π°ΠΊΠ°Π·-LG-6
  • . Π—Π°ΠΊΠ°Π·-LG-7
  • . Π—Π°ΠΊΠ°Π·-LG-8
  • .order-lg-9
  • .order-lg-10
  • . Π—Π°ΠΊΠ°Π·-LG-11
  • . Π—Π°ΠΊΠ°Π·-LG-12
  • .order-XL-0
  • .Π·Π°ΠΊΠ°Π·-XL-1
  • .order-XL-2
  • .order-XL-3
  • .order-XL-4
  • .order-XL-5
  • . Π—Π°ΠΊΠ°Π·-XL-6
  • . Π—Π°ΠΊΠ°Π·-XL-7
  • . Π—Π°ΠΊΠ°Π·-XL-8
  • . Π—Π°ΠΊΠ°Π·-XL-9
  • . Π—Π°ΠΊΠ°Π·-XL-10
  • . Π—Π°ΠΊΠ°Π·-XL-11
  • . Π—Π°ΠΊΠ°Π·-XL-12

Π’Ρ‹Ρ€ΠΎΠ²Π½ΡΡ‚ΡŒ содСрТимоС

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹ align-content Π½Π° ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°Ρ… flexbox для выравнивания Π³ΠΈΠ±ΠΊΠΈΡ… элСмСнтов вмСстС Π½Π° ΠΏΠΎΠΏΠ΅Ρ€Π΅Ρ‡Π½ΠΎΠΉ оси.Π’Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ ΠΈΠ· Π½Π°Ρ‡Π°Π»ΠΎ (Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ), ΠΊΠΎΠ½Π΅Ρ† , Ρ†Π΅Π½Ρ‚Ρ€ , ΠΌΠ΅ΠΆΠ΄Ρƒ , ΠΎΠΊΠΎΠ»ΠΎ ΠΈΠ»ΠΈ растяТСниС . Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΠ΄Π΅ΠΌΠΎΠ½ΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ эти ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹, ΠΌΡ‹ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΠ»ΠΈ flex-wrap: wrap ΠΈ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ»ΠΈ количСство Π³ΠΈΠ±ΠΊΠΈΡ… элСмСнтов.

Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅! Π­Ρ‚ΠΎ свойство Π½Π΅ влияСт Π½Π° ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ строки Π³ΠΈΠ±ΠΊΠΈΡ… элСмСнтов.

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

  
...

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

  
. ..

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

  
...

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

  
. ..

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

  
...

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

Π“ΠΈΠ±ΠΊΠΈΠΉ элСмСнт

  
. ..

АдаптивныС Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ для align-content .

  • .align-content-start
  • .align-content-end
  • .align-ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚-Ρ†Π΅Π½Ρ‚Ρ€
  • .align-content-ΠΎΠΊΠΎΠ»ΠΎ
  • .align-content-stretch
  • .align-content-sm-start
  • .align-content-sm-end
  • .align-content-sm-center
  • .align-content-sm-ΠΎΠΊΠΎΠ»ΠΎ
  • .Π²Ρ‹Ρ€ΠΎΠ²Π½ΡΡ‚ΡŒ ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚-sm-stretch
  • .align-content-md-start
  • .align-content-md-end
  • .align-content-md-center
  • .align-content-md-ΠΎΠΊΠΎΠ»ΠΎ
  • .align-content-md-stretch
  • .align-content-lg-start
  • .align-content-lg-end
  • . align-content-lg-center
  • .align-content-lg-ΠΎΠΊΠΎΠ»ΠΎ
  • .Π²Ρ‹Ρ€ΠΎΠ²Π½ΡΡ‚ΡŒ ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚-LG-stretch
  • .align-content-xl-start
  • .align-content-xl-end
  • .align-content-xl-center
  • .align-content-xl-around
  • .align-content-xl-stretch

Π’Ρ‹Ρ€ΠΎΠ²Π½ΡΡ‚ΡŒ содСрТимоС - Tailwind CSS

Start

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ justify-start , Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹Ρ€ΠΎΠ²Π½ΡΡ‚ΡŒ элСмСнты ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π½Π°Ρ‡Π°Π»Π° Π³Π»Π°Π²Π½ΠΎΠΉ оси ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°:

  
1
2
3

Center

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ justify-center для выравнивания элСмСнтов ΠΏΠΎ Ρ†Π΅Π½Ρ‚Ρ€Ρƒ Π³Π»Π°Π²Π½ΠΎΠΉ оси ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°:

  
1
2
3

End

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ justify-end , Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹Ρ€ΠΎΠ²Π½ΡΡ‚ΡŒ элСмСнты ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΊΠΎΠ½Ρ†Π° Π³Π»Π°Π²Π½ΠΎΠΉ оси ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°:

  
1
2
3

РасстояниС ΠΌΠ΅ΠΆΠ΄Ρƒ

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ justify-between , Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹Ρ€ΠΎΠ²Π½ΡΡ‚ΡŒ элСмСнты ΠΏΠΎ Π³Π»Π°Π²Π½ΠΎΠΉ оси ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΌ элСмСнтом ΠΎΡΡ‚Π°Π²Π°Π»ΠΎΡΡŒ Ρ€Π°Π²Π½ΠΎΠ΅ пространство:

  
1
2
3

ΠŸΡ€ΠΎΡΡ‚Ρ€Π°Π½ΡΡ‚Π²ΠΎ Π²ΠΎΠΊΡ€ΡƒΠ³

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π²Ρ‹Ρ€ΠΎΠ²Π½ΡΡ‚ΡŒ Π²ΠΎΠΊΡ€ΡƒΠ³ , Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹Ρ€ΠΎΠ²Π½ΡΡ‚ΡŒ элСмСнты вдоль Π³Π»Π°Π²Π½ΠΎΠΉ оси ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ с ΠΊΠ°ΠΆΠ΄ΠΎΠΉ стороны ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ элСмСнта ΠΎΡΡ‚Π°Π²Π°Π»ΠΎΡΡŒ Ρ€Π°Π²Π½ΠΎΠ΅ пространство:

  
1
2
3

Π Π°Π²Π½ΠΎΠΌΠ΅Ρ€Π½ΠΎ Ρ€Π°ΡΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Ρ€Π°Π²Π½ΠΎΠΌΠ΅Ρ€Π½ΠΎ ΠΏΠΎ ΡˆΠΈΡ€ΠΈΠ½Π΅ , Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹Ρ€ΠΎΠ²Π½ΡΡ‚ΡŒ элСмСнты ΠΏΠΎ Π³Π»Π°Π²Π½ΠΎΠΉ оси ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²ΠΎΠΊΡ€ΡƒΠ³ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ элСмСнта Π±Ρ‹Π»ΠΎ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎΠ΅ пространство, Π½ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ с ΡƒΡ‡Π΅Ρ‚ΠΎΠΌ удвоСния пространства, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π²Ρ‹ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π²ΠΈΠ΄ΠΈΡ‚Π΅ ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΌ элСмСнтом ΠΏΡ€ΠΈ использовании justify-around :

  
1
2
3

Адаптивный

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΎΠΏΡ€Π°Π²Π΄Π°Ρ‚ΡŒ Π³ΠΈΠ±ΠΊΠΈΠ΅ элСмСнты Π² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠ΅ останова, Π΄ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ прСфикс {screen}: ΠΊ Π»ΡŽΠ±ΠΎΠΌΡƒ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΌΡƒ слуТСбному классу. НапримСр, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ md: justify-between , Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρƒ justify-between Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для срСдних Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠ² экрана ΠΈ Π²Ρ‹ΡˆΠ΅.

  

Для получСния Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ функциях Π°Π΄Π°ΠΏΡ‚ΠΈΠ²Π½ΠΎΠ³ΠΎ Π΄ΠΈΠ·Π°ΠΉΠ½Π° Tailwind ΠΎΠ·Π½Π°ΠΊΠΎΠΌΡŒΡ‚Π΅ΡΡŒ с Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠ΅ΠΉ ΠΏΠΎ Π°Π΄Π°ΠΏΡ‚ΠΈΠ²Π½ΠΎΠΌΡƒ Π΄ΠΈΠ·Π°ΠΉΠ½Ρƒ.

Настройка

Π’Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹

По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ для ΡƒΡ‚ΠΈΠ»ΠΈΡ‚ justify-content ΡΠΎΠ·Π΄Π°ΡŽΡ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π°Π΄Π°ΠΏΡ‚ΠΈΠ²Π½Ρ‹Π΅ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹.

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, ΠΊΠ°ΠΊΠΈΠ΅ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΡŽΡ‚ΡΡ для ΡƒΡ‚ΠΈΠ»ΠΈΡ‚ justify-content, ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ² свойство justifyContent Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² вашСго ΠΏΠΎΠΏΡƒΡ‚Π½ΠΎΠ³ΠΎ Π²Π΅Ρ‚Ρ€Π° .config.js Ρ„Π°ΠΉΠ».

НапримСр, эта конфигурация Ρ‚Π°ΠΊΠΆΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ навСдСния ΠΈ фокусировки:

 
  module.exports = {
    Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹: {
      ΠΏΡ€ΠΎΠ΄Π»ΠΈΡ‚ΡŒ: {
        
+ justifyContent: ['hover', 'focus'],
      }
    }
  }  

Если Π²Ρ‹ Π½Π΅ ΠΏΠ»Π°Π½ΠΈΡ€ΡƒΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹ justify-content Π² своСм ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ΠΈΡ…, установив для свойства justifyContent Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ false Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ corePlugins вашСго Ρ„Π°ΠΉΠ»Π° ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ:

 
  ΠΌΠΎΠ΄ΡƒΠ»ΡŒ. экспорт = {
    corePlugins: {
      
+ justifyContent: false,
    }
  }  

CSS justify-content

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ <ΡΡ‚ΠΈΠ»ΡŒ> .external-container { высота: 200 пиксСлСй; ΡˆΡ€ΠΈΡ„Ρ‚: 100 24px / 100px Π±Π΅Π· засСчСк; Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅ тСкста: Ρ†Π΅Π½Ρ‚Ρ€; Ρ†Π²Π΅Ρ‚ Π±Π΅Π»Ρ‹ΠΉ; Π³Ρ€Π°Π½ΠΈΡ†Π°: 1px solid #ccc; дисплСй: Π³ΠΈΠ±ΠΊΠΈΠΉ; justify-content: пространство Π²ΠΎΠΊΡ€ΡƒΠ³; } .outer-container div { ΡˆΠΈΡ€ΠΈΠ½Π°: 20%; } .red { Ρ„ΠΎΠ½: ΠΎΡ€Π°Π½ΠΆΠ΅Π²ΠΎ-красный; } .green { Ρ„ΠΎΠ½: ΠΆΠ΅Π»Ρ‚ΠΎ-Π·Π΅Π»Π΅Π½Ρ‹ΠΉ; } .blue { Ρ„ΠΎΠ½: ΡΡ‚Π°Π»ΡŒΠ½ΠΎ-Π³ΠΎΠ»ΡƒΠ±ΠΎΠΉ; }

1
2
3

Бвойство CSS justify-content управляСт Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅ΠΌ содСрТимого Π±Π»ΠΎΠΊΠ° ΠΏΠΎ Π³Π»Π°Π²Π½ΠΎΠΉ / встроСнной оси Π² Π΅Π³ΠΎ Π±Π»ΠΎΠΊΠ΅ содСрТимого.

Бвойство justify-content Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π΅Ρ‚ Π³ΠΈΠ±ΠΊΠΈΠ΅ элСмСнты ΠΏΠΎ Π³Π»Π°Π²Π½ΠΎΠΉ оси Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ строки Π³ΠΈΠ±ΠΊΠΎΠ³ΠΎ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°. Он опрСдСляСт, ΠΊΠ°ΠΊ пространство распрСдСляСтся ΠΌΠ΅ΠΆΠ΄Ρƒ Π³ΠΈΠ±ΠΊΠΈΠΌΠΈ элСмСнтами ΠΈ Π²ΠΎΠΊΡ€ΡƒΠ³ Π½ΠΈΡ….

Π’Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅ выполняСтся послС Π»ΡŽΠ±Ρ‹Ρ… Π³ΠΈΠ±ΠΊΠΈΡ… Π΄Π»ΠΈΠ½ ΠΈ Π»ΡŽΠ±Ρ‹Ρ… автоматичСских ΠΏΠΎΠ»Π΅ΠΉ. Π‘Π»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, flex-grow Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ 0 , ΠΈΠ½Π°Ρ‡Π΅ свойство justify-content Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ Π½ΠΈΠΊΠ°ΠΊΠΎΠ³ΠΎ эффСкта.

Π₯отя свойство justify-content Π±Ρ‹Π»ΠΎ создано для Π³ΠΈΠ±ΠΊΠΈΡ… ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΎΠ² (ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ ΠΏΠΎΠ΄ Π΄Ρ€ΡƒΠ³ΠΈΠΌ ΠΈΠΌΠ΅Π½Π΅ΠΌ), Π΅Π³ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π² настоящСС врСмя Ρ€Π°ΡΡˆΠΈΡ€ΡΠ΅Ρ‚ΡΡ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Ρ‹ Π±Π»ΠΎΠΊΠΎΠ² ΠΈ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Ρ‹ сСтки.

Бинтаксис

justify-content: flex-start | Π³ΠΈΠ±ΠΊΠΈΠΉ ΠΊΠΎΠ½Π΅Ρ† | Ρ†Π΅Π½Ρ‚Ρ€ | пространство ΠΌΠ΅ΠΆΠ΄Ρƒ | космос-ΠΎΠΊΠΎΠ»ΠΎ

Π’ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Π΅ значСния

Π³ΠΈΠ±ΠΊΠΈΠΉ старт
Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ Flex ΡƒΠΏΠ°ΠΊΠΎΠ²Π°Π½Ρ‹ Π² Π½Π°Ρ‡Π°Π»Π΅ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΠΈ.
Π³ΠΈΠ±ΠΊΠΈΠΉ ΠΊΠΎΠ½Π΅Ρ†
ИздСлия Flex ΡƒΠΏΠ°ΠΊΠΎΠ²Ρ‹Π²Π°ΡŽΡ‚ΡΡ Π±Π»ΠΈΠΆΠ΅ ΠΊ ΠΊΠΎΠ½Ρ†Ρƒ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΠΈ.
Ρ†Π΅Π½Ρ‚Ρ€
Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ Flex ΡƒΠΏΠ°ΠΊΠΎΠ²Π°Π½Ρ‹ Π±Π»ΠΈΠΆΠ΅ ΠΊ Ρ†Π΅Π½Ρ‚Ρ€Ρƒ Π»ΠΈΠ½ΠΈΠΈ.
ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΠΊ ΠΌΠ΅ΠΆΠ΄Ρƒ
Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ Flex Ρ€Π°Π²Π½ΠΎΠΌΠ΅Ρ€Π½ΠΎ распрСдСлСны ΠΏΠΎ Π»ΠΈΠ½ΠΈΠΈ.
пространство Π²ΠΎΠΊΡ€ΡƒΠ³
Π’ΠΎ ΠΆΠ΅, Ρ‡Ρ‚ΠΎ ΠΈ , ΠΏΡ€ΠΎΠ±Π΅Π» ΠΌΠ΅ΠΆΠ΄Ρƒ , Π½ΠΎ с ΠΏΡ€ΠΎΠ±Π΅Π»Π°ΠΌΠΈ ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½Π½ΠΎΠ³ΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ€Π° Π½Π° ΠΎΠ±ΠΎΠΈΡ… ΠΊΠΎΠ½Ρ†Π°Ρ….

ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, всС свойства CSS Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°ΡŽΡ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ значСния ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… слов для всСго CSS Π² качСствС СдинствСнного ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° значСния своСго свойства:

Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹ΠΉ
ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΠ΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ Π² качСствС Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ значСния свойства.
Π½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ
ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΠ΅Ρ‚ вычислСнноС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ свойства Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ элСмСнта.
снято
Π­Ρ‚ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ дСйствуСт ΠΊΠ°ΠΊ ΠΏΡ€ΠΈ наслСдовании ΠΈΠ»ΠΈ ΠΏΡ€ΠΈ Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠΌ , Π² зависимости ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, наслСдуСтся свойство ΠΈΠ»ΠΈ Π½Π΅Ρ‚. Π”Ρ€ΡƒΠ³ΠΈΠΌΠΈ словами, ΠΎΠ½ устанавливаСт для всСх свойств ΠΈΡ… Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, Ссли ΠΎΠ½ΠΈ Π½Π°ΡΠ»Π΅Π΄ΡƒΡŽΡ‚ΡΡ, ΠΈΠ»ΠΈ ΠΈΡ… Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, Ссли ΠΎΠ½ΠΈ Π½Π΅ Π½Π°ΡΠ»Π΅Π΄ΡƒΡŽΡ‚ΡΡ.

Основная информация ΠΎΠ± ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π΅ нСдвиТимости

ΠΠ°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅
Π³ΠΈΠ±ΠΊΠΈΠΉ старт
ΠžΡ‚Π½ΠΎΡΠΈΡ‚ΡΡ ΠΊ
Π“ΠΈΠ±ΠΊΠΈΠ΅ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Ρ‹

Π­Ρ‚ΠΎ свойство Π² настоящСС врСмя пСрСопрСдСляСтся, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΠ»ΠΎΡΡŒ ΠΊ Π±Π»ΠΎΡ‡Π½Ρ‹ΠΌ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°ΠΌ, Π³ΠΈΠ±ΠΊΠΈΠΌ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°ΠΌ ΠΈ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°ΠΌ сСтки.

УнаслСдовано?
НСт
МСдиа
Π’ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ
РасчСтноС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅
Π£ΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅
Анимационный
НСт

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ ΠΊΠΎΠ΄Π°

Π‘Π°Π·ΠΎΠ²Ρ‹ΠΉ CSS

.external-container { дисплСй: Π³ΠΈΠ±ΠΊΠΈΠΉ; justify-content: ΠΏΡ€ΠΎΠ±Π΅Π» ΠΌΠ΅ΠΆΠ΄Ρƒ; }

Π Π°Π±ΠΎΡ‡ΠΈΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π² HTML-Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π΅

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ <ΡΡ‚ΠΈΠ»ΡŒ> . outer-container { высота: 200 пиксСлСй; ΡˆΡ€ΠΈΡ„Ρ‚: 100 24px / 100px Π±Π΅Π· засСчСк; Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅ тСкста: Ρ†Π΅Π½Ρ‚Ρ€; Ρ†Π²Π΅Ρ‚ Π±Π΅Π»Ρ‹ΠΉ; Π³Ρ€Π°Π½ΠΈΡ†Π°: 1px solid #ccc; дисплСй: Π³ΠΈΠ±ΠΊΠΈΠΉ; justify-content: пространство Π²ΠΎΠΊΡ€ΡƒΠ³; } .external-container div { ΡˆΠΈΡ€ΠΈΠ½Π°: 20%; } .red { Ρ„ΠΎΠ½: ΠΎΡ€Π°Π½ΠΆΠ΅Π²ΠΎ-красный; } .green { Ρ„ΠΎΠ½: ΠΆΠ΅Π»Ρ‚ΠΎ-Π·Π΅Π»Π΅Π½Ρ‹ΠΉ; } .blue { Ρ„ΠΎΠ½: ΡΡ‚Π°Π»ΡŒΠ½ΠΎ-Π³ΠΎΠ»ΡƒΠ±ΠΎΠΉ; }
1
2
3

ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉ

Π‘ΠΏΠ΅Ρ†ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ CSS

О Flexbox

Flexbox относится ΠΊ ΠΌΠΎΠ΄ΡƒΠ»ΡŽ Flexible Box Layout, прСдставлСнному Π² CSS3.Π“ΠΈΠ±ΠΊΠΈΠΉ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ - это элСмСнт с display: flex ΠΈΠ»ΠΈ display: inline-flex .

Π’ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π³ΠΈΠ±ΠΊΠΎΠ³ΠΎ ΠΌΠ°ΠΊΠ΅Ρ‚Π° Π΄ΠΎΡ‡Π΅Ρ€Π½ΠΈΠ΅ элСмСнты Π³ΠΈΠ±ΠΊΠΎΠ³ΠΎ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° ΠΌΠΎΠ³ΡƒΡ‚ Ρ€Π°ΡΠΏΠΎΠ»Π°Π³Π°Ρ‚ΡŒΡΡ Π² любом Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠΈ ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Β«ΡΠ³ΠΈΠ±Π°Ρ‚ΡŒΒ» свои Ρ€Π°Π·ΠΌΠ΅Ρ€Ρ‹, Π»ΠΈΠ±ΠΎ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°ΡΡΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π·Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Π½Π΅ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠ΅ пространство, Π»ΠΈΠ±ΠΎ сТимаясь, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ пСрСполнСния Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ элСмСнта.

Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ свСдСния ΠΎ Π³ΠΈΠ±ΠΊΠΈΡ… элСмСнтах см. Π’ свойствС flex .

ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ Ρ‚Π°Π±Π»ΠΈΡ†Π° прСдоставлСна ​​Caniuse.com ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ этой Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ΠΎΠΌ.

ΠŸΡ€Π΅Ρ„ΠΈΠΊΡΡ‹ поставщиков

Для максимальной совмСстимости с Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ΠΎΠΌ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π²Π΅Π±-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ Π΄ΠΎΠ±Π°Π²Π»ΡΡŽΡ‚ свойства Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Ρ‚Π°ΠΊΠΈΠ΅ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ, ΠΊΠ°ΠΊ -webkit- для Safari, Google Chrome ΠΈ Opera (Π±ΠΎΠ»Π΅Π΅ Π½ΠΎΠ²Ρ‹Π΅ вСрсии), -ms- для Internet Explorer, -moz- для Firefox, -o- для Π±ΠΎΠ»Π΅Π΅ старых вСрсий Opera ΠΈ Ρ‚. Π΄. Как ΠΈ Π² случаС любого свойства CSS, Ссли Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΏΡ€ΠΎΠΏΡ€ΠΈΠ΅Ρ‚Π°Ρ€Π½ΠΎΠ΅ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅, ΠΎΠ½ просто ΠΏΡ€ΠΎΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΡƒΠ΅Ρ‚ Π΅Π³ΠΎ.

Π­Ρ‚Π° ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ° Π½Π΅ рСкомСндуСтся W3C, ΠΎΠ΄Π½Π°ΠΊΠΎ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ… случаях СдинствСнный способ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ свойство - это Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ CSS, совмСстимоС с вашим Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ΠΎΠΌ.

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΠΈ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ΠΎΠ² ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ стрСмятся ΠΏΡ€ΠΈΠ΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒΡΡ спСцификаций W3C, ΠΈ, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ свойство Π±Π΅Π· прСфикса, ΠΎΠ½ΠΈ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΡƒΠ΄Π°Π»ΡΡŽΡ‚ Π²Π΅Ρ€ΡΠΈΡŽ с прСфиксом. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, W3C совСтуСт поставщикам ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ свои прСфиксы для свойств, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄ΠΎΡΡ‚ΠΈΠ³Π°ΡŽΡ‚ статуса ΠΊΠ°Π½Π΄ΠΈΠ΄Π°Ρ‚Π° Π² Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΠΈ.

МногиС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Autoprefixer, постпроцСссор для CSS.Autoprefixer автоматичСски добавляСт прСфиксы поставщиков Π² ваш CSS, поэтому Π²Π°ΠΌ это Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ. Он Ρ‚Π°ΠΊΠΆΠ΅ удаляСт старыС Π½Π΅Π½ΡƒΠΆΠ½Ρ‹Π΅ прСфиксы ΠΈΠ· вашСго CSS.

Π’Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Autoprefixer с Ρ‚Π°ΠΊΠΈΠΌΠΈ прСпроцСссорами, ΠΊΠ°ΠΊ Less ΠΈ Sass.

Π’Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅ элСмСнтов ΠΈ Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅ содСрТимого - созданиС ΠΌΠ°ΠΊΠ΅Ρ‚ΠΎΠ² Π²Π΅Π±-страниц с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ CSS

https://vimeo.com/293173171

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ Π² Flexbox располоТСны Π½Π° Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½ΠΎ ΠΈΠ»ΠΈ Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎ Π² зависимости ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚Π΅ Π»ΠΈ Π²Ρ‹ строку ΠΈΠ»ΠΈ столбСц для Π³ΠΈΠ±ΠΊΠΎΠ³ΠΎ направлСния.Π­Ρ‚ΠΎ Β«Π³Π»Π°Π²Π½ΠΎΠ΅Β» Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ - это Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌ Π³Π»Π°Π²Π½ΠΎΠΉ осью Π³ΠΈΠ±ΠΊΠΈΡ… элСмСнтов . Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, пСрпСндикулярноС Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ - это попСрСчная ось .

  • Если элСмСнты располоТСны Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½ΠΎ Π² ряд (ΠΈΠ»ΠΈ ряды), главная ось Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½Π°, Π° попСрСчная ось - Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½Π°.

  • Если элСмСнты располоТСны Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎ Π² столбСц (ΠΈΠ»ΠΈ столбцы), главная ось Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½Π°, Π° попСрСчная ось - Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½Π°.

Основная ΠΈ попСрСчная оси
Π’Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎ Π³Π»Π°Π²Π½ΠΎΠΉ оси

ΠœΡ‹ Π½Π°Ρ‡Π½Π΅ΠΌ с элСмСнтов, Π²Ρ‹Ρ€ΠΎΠ²Π½Π΅Π½Π½Ρ‹Ρ… ΠΏΠΎ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΠΈ, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ это случай ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ .Π§Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΈΡ… Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ justify-content , ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ значСния:

  • flex-start : Π²Ρ‹Ρ€ΠΎΠ²Π½Π΅Π½ΠΎ Π² Π½Π°Ρ‡Π°Π»Π΅ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°

  • flex-end : Π²Ρ‹Ρ€ΠΎΠ²Π½Π΅Π½ΠΎ Π² ΠΊΠΎΠ½Ρ†Π΅ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°

  • Ρ†Π΅Π½Ρ‚Ρ€ : Π²Ρ‹Ρ€ΠΎΠ²Π½Π΅Π½ ΠΏΠΎ Ρ†Π΅Π½Ρ‚Ρ€Ρƒ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°

  • пространство ΠΌΠ΅ΠΆΠ΄Ρƒ : элСмСнты распрСдСлСны ΠΏΠΎ оси (ΠΌΠ΅ΠΆΠ΄Ρƒ Π½ΠΈΠΌΠΈ Π΅ΡΡ‚ΡŒ пространство)

  • пространство Π²ΠΎΠΊΡ€ΡƒΠ³ : элСмСнты распрСдСлСны ΠΏΠΎ оси, Π½ΠΎ Π΅ΡΡ‚ΡŒ Π΅Ρ‰Π΅ пространство ΠΏΠΎ краям

НапримСр:

 . container {
    дисплСй: гибкий;
    justify-content: пространство Π²ΠΎΠΊΡ€ΡƒΠ³;
}  

Как насчСт Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΡ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ происходит?

Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ justify-content

Π’ΠΈΠ΄ΠΈΡ‚Π΅ Π»ΠΈ Π²Ρ‹, ΠΊΠ°ΠΊ элСмСнты Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°ΡŽΡ‚ΡΡ ΠΏΠΎ-Ρ€Π°Π·Π½ΠΎΠΌΡƒ Π² зависимости ΠΎΡ‚ значСния justify-content ? Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΎΠ΄Π½ΠΎΠ³ΠΎ простого свойства ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Ρ€Π°Π·ΡƒΠΌΠ½ΠΎ Π²Ρ‹Ρ€ΠΎΠ²Π½ΡΡ‚ΡŒ элСмСнты Ρ‚Π°ΠΊ, ΠΊΠ°ΠΊ ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ.

Π₯отя это ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ Π±ΠΎΠ»Π΅Π΅ ΠΈΠ½Ρ‚ΡƒΠΈΡ‚ΠΈΠ²Π½Ρ‹ΠΌ для строк, Ρ‚ΠΎ ΠΆΠ΅ свойство justify-content ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΈ ΠΊ столбцам Flexbox! НапримСр, посмотритС, ΠΊΠ°ΠΊ ΠΏΡ€ΠΎΠ±Π΅Π» Π²ΠΎΠΊΡ€ΡƒΠ³ отобраТаСтся Π² столбцС:

 .container {
    дисплСй: гибкий;
    justify-content: пространство Π²ΠΎΠΊΡ€ΡƒΠ³;
}  
justify-content: space-around Π² столбцС
Π’Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎ ΠΏΠΎΠΏΠ΅Ρ€Π΅Ρ‡Π½ΠΎΠΉ оси

Π—Π΄Π΅ΡΡŒ Flexbox становится Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ . .. странным.

Когда ΠΌΡ‹ Π³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎ Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠΈ элСмСнтов ΠΏΠΎ ΠΏΠΎΠΏΠ΅Ρ€Π΅Ρ‡Π½ΠΎΠΉ оси, Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΏΡ€ΠΎΡ…ΠΎΠ΄ΠΈΡ‚ cross direction , зависит ΠΎΡ‚ flex-direction. Π”Π°Π²Π°ΠΉΡ‚Π΅ посмотрим Π½Π° Ρ‚Ρƒ ΠΆΠ΅ ΠΈΠ»Π»ΡŽΡΡ‚Ρ€Π°Ρ†ΠΈΡŽ, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΌΡ‹ Π²ΠΈΠ΄Π΅Π»ΠΈ Π² Π½Π°Ρ‡Π°Π»Π΅ Π³Π»Π°Π²Ρ‹:

ОсСй в Flexbox

ΠŸΠΎΠΌΠ½ΠΈΡ‚Π΅:

  • Если элСмСнты располоТСны Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½ΠΎ Π² ряд (ΠΈΠ»ΠΈ ряды), главная ось Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½Π°, Π° попСрСчная ось - Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½Π°Ρ.

  • Если элСмСнты располоТСны Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎ Π² столбСц (ΠΈΠ»ΠΈ столбцы), главная ось Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½Π°, Π° попСрСчная ось - Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½Π°.

Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ свойства align-items ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅ элСмСнтов ΠΏΠΎ ΠΏΠΎΠΏΠ΅Ρ€Π΅Ρ‡Π½ΠΎΠΉ оси . align-items ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ свойства:

  • stretch : элСмСнты Ρ€Π°ΡΡ‚ΡΠ³ΠΈΠ²Π°ΡŽΡ‚ΡΡ ΠΏΠΎ всСй ΠΏΠΎΠΏΠ΅Ρ€Π΅Ρ‡Π½ΠΎΠΉ оси (это Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ)

  • flex-start : Π²Ρ‹Ρ€ΠΎΠ²Π½Π΅Π½Ρ‹ Π² Π½Π°Ρ‡Π°Π»Π΅ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°

  • Π³ΠΈΠ±ΠΊΠΈΠΉ ΠΊΠΎΠ½Π΅Ρ† : Π²Ρ‹Ρ€ΠΎΠ²Π½Π΅Π½ ΠΏΠΎ ΠΊΡ€Π°ΡŽ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°

  • Ρ†Π΅Π½Ρ‚Ρ€ : Π²Ρ‹Ρ€ΠΎΠ²Π½Π΅Π½ ΠΏΠΎ Ρ†Π΅Π½Ρ‚Ρ€Ρƒ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°

  • базовая линия : Π²Ρ‹Ρ€ΠΎΠ²Π½Π΅Π½Π° ΠΏΠΎ Π±Π°Π·ΠΎΠ²ΠΎΠΉ Π»ΠΈΠ½ΠΈΠΈ крСста ось ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΎΠ²

 . ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€
    {дисплСй: гибкий;
    justify-content: center;
    align-items: center;
}  

Π’Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅ элСмСнтов ΠΏΠΎ Ρ†Π΅Π½Ρ‚Ρ€Ρƒ (ΠΈ Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅ содСрТимого ΠΏΠΎ Ρ†Π΅Π½Ρ‚Ρ€Ρƒ) ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Ρƒ нас Π΅ΡΡ‚ΡŒ ΠΊΠ°ΠΊ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½ΠΎ, Ρ‚Π°ΠΊ ΠΈ Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎ Ρ†Π΅Π½Ρ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ΅ содСрТимоС! Ого! Π’Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠ΅ Ρ†Π΅Π½Ρ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ особСнно слоТно Π² CSS, Π½ΠΎ Flexbox позволяСт Π»Π΅Π³ΠΊΠΎ это ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ. Π’ΠΎΡ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚:

Π’Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠ΅ Ρ†Π΅Π½Ρ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅
Π’Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ элСмСнта

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π°ΠΆΠ΅ Π²Ρ‹Ρ€ΠΎΠ²Π½ΡΡ‚ΡŒ ΠΎΠ΄ΠΈΠ½ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ элСмСнт вмСсто всСй Π³Ρ€ΡƒΠΏΠΏΡ‹, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ свойство align-self .БовмСстим послСдний элСмСнт Π² нашСй Π³Ρ€ΡƒΠΏΠΏΠ΅ с ΠΊΠΎΠ½Ρ†ΠΎΠΌ ΠΏΠΎΠΏΠ΅Ρ€Π΅Ρ‡Π½ΠΎΠΉ оси:

  .container div: nth-child (6) {
    align-self: Π³ΠΈΠ±ΠΊΠΈΠΉ ΠΊΠΎΠ½Π΅Ρ†;
}  
Π’Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ элСмСнта

ΠŸΠΎΠΌΠ½ΠΈΡ‚Π΅, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΌΡ‹ Π³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎ строкС, попСрСчная ось располоТСна Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎ; поэтому Ρ†ΠΈΡ„Ρ€Π° 6 Π²Ρ‹Ρ€ΠΎΠ²Π½Π΅Π½Π° ΠΏΠΎ Π½ΠΈΠΆΠ½Π΅ΠΌΡƒ ΠΊΡ€Π°ΡŽ, Π° Π½Π΅ ΠΏΠΎ ΠΏΡ€Π°Π²ΠΎΠΌΡƒ ΠΊΡ€Π°ΡŽ.

Π’ΠΎΠ·ΡŒΠΌΠΈΡ‚Π΅ Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅ ΠΈ обоснованиС содСрТания для вращСния ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ!

https://www.codevolve.com/api/v1/publishable_key/2A9CAA3419124E3E8C3F5AFCE5306292?content_id=379ad3ea-17e7-453d-8fd9-78546c4dbdf6

433