Выравнивание элементов
Утилиты для управления расположением флекс элементов и сетки вдоль поперечной оси контейнера.
Краткая справка
Основы использования
Используйте items-stretch , чтобы растянуть элементы до заполнения поперечной оси контейнера:
div class="flex items-stretch . "> div class="py-4">01div> div class="py-12">02div> div class="py-8">03div> div>
Используйте items-start , чтобы выровнять элементы по началу поперечной оси контейнера:
div class="flex items-start . "> div class="py-4">01div> div class="py-12">02div> div class="py-8">03div> div>
Используйте items-center для выравнивания элементов по центру поперечной оси контейнера:
div class="flex items-center . "> div class="py-4">01div> div class="py-12">02div> div class="py-8">03div> div>
Используйте items-end , чтобы выровнять элементы по концу поперечной оси контейнера:
div class="flex items-end . "> div class="py-4">01div> div class="py-12">02div> div class="py-8">03div> div>
Используйте items-baseline для выравнивания элементов по поперечной оси контейнера так, чтобы все их базовые линии были выровнены:
div class="flex items-baseline . "> div class="pt-2 pb-6">01div> div class="pt-8 pb-12">02div> div class="pt-12 pb-4">03div> div>
Применяя условно
Наведение, фокус и другие состояния
Tailwind позволяет условно применять служебные классы в разных состояниях с помощью модификаторов вариантов. Например, используйте hover : items-center , чтобы применять утилиту items-center только при hover .
div class="flex items-stretch hover:items-center"> div>
Полный список всех доступных модификаторов состояния смотрите в документации Наведение, фокус и другие состояния.
Контрольные точки и медиа-запросы
Вы также можете использовать модификаторы вариантов для таргетинга на медиа-запросы, такие как реагирующие контрольные точки, темный режим, предпочтения с уменьшенным движением и многое другое. Например, используйте md: items-center , чтобы применить утилиту items-center только на экранах среднего размера и выше.
div class="flex items-stretch md:items-center"> div>
Copyright © 2023 Tailwind Labs Inc.
Выравнивание текста
Часть содержимого этого раздела может быть неприменима к некоторым языкам.
Выравнивание текста — это атрибут форматирование абзацев, который определяет внешний вид текста во всем абзаце. Например, в абзаце с выравниванием по левому краю (наиболее распространенное выравнивание), текст выравнивается по левому полю. В абзаце, который выровнен по обоим полям, текст выравнивается по обоим полям.
выравнивание текста по леву
текст по центру
выравнивание текста по правому
текст по у цель
Выравнивание текста по левому краю, по центру или по правому краю
- Щелкните любое место абзаца, который необходимо выровнять.
- На вкладке Главная в группе Абзац сделайте следующее:
Выравнивание текста по левому краю
Выравнивание текста по левую
Выравнивание текста по центру
Центр текста
Выровнять текст по правому краю
Выровнять текст по правому
Выровнять по ширине
При выравнивании текста по ширине между словами добавляется пространство, чтобы оба края каждой строки были выровнены относительно обоих полей. Последняя строка абзаца выравнивается по левому краю.
- Щелкните любое место абзаца, который необходимо выровнять по ширине.
- На вкладке Главная в группе Абзац нажмите кнопку Вы можете выжать .
Важно: Microsoft Office для Mac 2011 больше не поддерживается. Перейдите на Microsoft 365, чтобы работать удаленно с любого устройства и продолжать получать поддержку.
Выравнивание текста по левому краю, по центру или по правому краю
- Щелкните любое место абзаца, который необходимо выровнять.
- На вкладке Главная в Абзац выполните одно из перечисленных ниже действий.
Выравнивание текста по левому краю
Выравнивание текста по левую
Выравнивание текста по центру
Центр текста
Выровнять текст по правому краю
Выровнять текст по правому
Выровнять по ширине
При выравнивании текста по ширине между словами добавляется пространство, чтобы оба края каждой строки были выровнены относительно обоих полей. Последняя строка абзаца выравнивается по левому краю.
- Щелкните любое место абзаца, который необходимо выровнять по ширине.
- На вкладке Главная в области Абзацнажмите кнопку Вы можете .
Распределить текст
При распределения текста между символами добавляется пространство, чтобы оба края каждой строки были выровнены относительно обоих полей. Последняя строка абзаца также распределяется.
- Щелкните любое место абзаца, текст в котором необходимо распределить.
- На вкладке Главная в области Абзацнажмите кнопку Распределенный .
Способы прижать HTML элемент к нижнему краю экрана
Много занимаюсь версткой, потому возникают разные интересные задачи. Решил не оставлять без внимания этот интересный опыт.
Одна из таких задач, которая нередко возникают при верстке сайтов, желание заказчика «прибить» футер шаблона к нижнему краю окна браузера. Иначе, когда на странице мало контента, нижняя часть шаблона (футер) болтается как одна субстанция в проруби.
Дальше я показываю целых три способа как разместить футер у нижнего края экрана.
Для предметного разговора глянем на скелет HTML документа.
Условно документ разделен на три части — есть шапка (div#header), содержательная часть (div#content) и футер (div#footer).
Фиксированное позиционирование (fixed).
Один из вариантов, который не решает задачу, но маскирует проблему — установка фиксированного позиционирования. Чаще всего фиксируется позиция как шапки так и футера, превращая документ в аналог свитка. Мы всегда видим верх и низ шаблона, а содержание прокручивается скроллингом, заходя под них.
Для фиксирования сверху мы пишем стили для шапки:
position : fixed ;
А для футера это будет так:
position : fixed ;
Единственной проблемой будет то, что часть содержания будет скрыта шапкой и футером. Что можно решить, добавив соответствующий padding или margin для контейнера #content. На картинке ниже пример позиционирования для нашего случая.
В левой части — мы просто зафиксировали шапку и футер (их роль играют синие квадраты 100×100). Содержание оказалось перерытым шапкой. В правой части мы добавили padding для зеленого прямоугольника, играющего роль содержимого. Теперь отступы не дают перекрываться содержимому, и мы получили т.н. свиток — прокручивать контент можно скроллингом, если документ не умещается в видимой области.

Вот HTML код примера.
position : fixed ;
background-color : #88F ;
height : 100px ; width : 100px ;
background-color : #8F8 ;
min-height : 300px ; width : 150px ;
/* padding: 100px 0; */
position : fixed ;
background-color : #88F ;
height : 100px ; width : 100px ;
Табличная магия. Позиционирование таблицей.
Таблица — это по истине чудесный элемент верстки. Он позволяет просто делать то, что нужно без лишних размышлений. Применительно к нашему случаю, роль всех трех элементов (шапки, содержания и футера) будет играть строки таблицы.
Так как таблица — это непрерывный объект (строки идут одна за другой), то проблем с перекрытием одного из трех элементов двумя другими не будет. Здесь мы получаем решение нашей задачи, но только для «нормальных» браузеров. А нормальные это все, кроме IE, как вы уже догадались.
На рисунке поверх Opera, результат рендеринга в IE Edge c эмуляцией 9й версии IE. В IE версий 10-11, результат аналогичен Opera.

Вот исходный пример (HTML код), который я тестировал.
#total-wrapper < height : 100% ; >
background-color : #88F ;
height : 100px ;
background-color : #8F8 ;
background-color : #88F ;
height : 100px ;
#total-wrapper tr < vertical-align : top ; >
Совместимость с IE можно повысить аж до 7 версии добавлением следующих стилей, задающих явно высоту родительских контейнеров:
html , body < height : 100 % ; >
Впрочем, в 7 й версии нужно будет сделать ещё ряд манипуляций, чтобы привести таблицу к точно такому же виду. В последнее время проблема с IE не так остра, как ранее, доля старых версии этого браузера малозначительна, так что выпад в сторону IE — скорее моё нытье :), а не реальная проблема.
Снова элементы div. «Шаг назад».
Здесь мы возвращаемся к верстке с помощью div. Идея следующая — задать общий контейнер (#total-wrapper) 100% высотой — куда в нашем случае входят шапка и содержание, а футер разместить следом за ним с позиционированием absolute. При этом сделать как бы шаг назад — т.е. с помощью margin сместить футер вверх.
Здесь возникнет снова проблема с наложением футера на содержание, но мы уже знаем как с этим бороться.

В итоге получаем нужное нам свойство для футера — он прилипает к нижнему краю, если контента мало и нет полосы прокрутки, и сдвигается ниже, когда возникает вертикальная полоса прокрутки.
HTML для этого примера:
Свойство align-content
Определяет, как каждая строка выравнивается внутри контейнера flexbox вдоль поперечной оси или внутри контейнера grid вдоль оси блока. Это применимо, только если присутствует flex-wrap со значением wrap и если есть несколько строк элементов flexbox / grid.
align-content: center;
Пошаговый план! Как быстро научиться создавать сайты!
- поддерживается начиная с
- частичная поддержка до
- не поддерживается
Значения
align-content: flex-start;
Строки будут стремиться к началу контейнера. Применимо только для flexbox
.example-1 < display: flex; flex-wrap: wrap; align-content: flex-start; height: 350px; outline: 2px dashed #ccc; >.example-1-item align-content: flex-end;
Строки будут стремиться к концу контейнера. Применимо только для flexbox
.example-2 < display: flex; flex-wrap: wrap; align-content: flex-end; height: 350px; outline: 2px dashed #ccc; >.example-2-item align-content: center;
Строки будут выровнены по центру контейнера
.example-3 < display: flex; flex-wrap: wrap; align-content: center; height: 350px; outline: 2px dashed #ccc; >.example-3-item align-content: space-between;
Каждая строка займет необходимое ей пространство, оставшееся пространство появится между строк. Интервал между строк одинаков. Первая строка будет прижата к началу контейнера, последняя — к концу.
.example-4 < display: flex; flex-wrap: wrap; align-content: space-between; height: 350px; outline: 2px dashed #ccc; >.example-4-item align-content: space-around;
Каждая строка займет необходимое ей пространство. Интервал между каждой парой соседних строк одинаков. Пустое пространство до первого и после последнего элемента равно половине пространства между каждой парой соседних строк.
.example-5 < display: flex; flex-wrap: wrap; align-content: space-around; height: 350px; outline: 2px dashed #ccc; >.example-5-item align-content: space-evenly;
Каждая строка займет необходимое ей пространство. Интервал между каждой строк одинаков.
.example-6 < display: flex; flex-wrap: wrap; align-content: space-evenly; height: 350px; outline: 2px dashed #ccc; >.example-6-item align-content: start;
Строки grid контейнера будут стремиться к началу контейнера
.example-7 < display: grid; grid-template-rows: 20% 20% 20%; grid-row-gap: 15px; align-content: start; height: 350px; outline: 2px dashed #ccc; >.example-7-item align-content: end;
Строки grid контейнера будут стремиться к концу контейнера
.example-8 < display: grid; grid-template-rows: 20% 20% 20%; grid-row-gap: 15px; align-content: end; height: 350px; outline: 2px dashed #ccc; >.example-8-item align-content: stretch;
Неиспользуемое пространство контейнера равномерно распределяется по строкам контейнера так, чтобы строки занимали всю высоту контейнера
.example-9 < display: grid; grid-row-gap: 15px; align-content: stretch; height: 350px; outline: 2px dashed #ccc; >.example-9-item