• Какие значения может принимать свойство text align. Оформление текста с помощью CSS. Выравнивание последней строки: свойство text-align-last

    CSS Internet Explorer Chrome Opera Safari Firefox Android iOS
    2.1 6.0+ 8.0+ 1.0+ 3.5+ 1.0+ 1.0+ 1.0+ 1.0+
    3 2.0+ 11.6+ 3.1+ 3.6+ 2.1+ 2.0+

    Краткая информация

    Версии CSS

    Значения

    center Выравнивание текста по центру. Текст помещается по центру горизонтали окна браузера или контейнера, где расположен текстовый блок. Строки текста словно нанизываются на невидимую ось, которая проходит по центру веб-страницы. Подобный способ выравнивания активно используется в заголовках и различных подписях, вроде подрисуночных, он придает официальный и солидный вид оформлению текста. Во всех других случаях выравнивание по центру применяется редко по той причине, что читать большой объем такого текста неудобно. justify Выравнивание по ширине, что означает одновременное выравнивание по левому и правому краю. Чтобы произвести это действие браузер в этом случае добавляет пробелы между словами. left Выравнивание текста по левому краю. В этом случае строки текста выравнивается по левому краю, а правый край располагается «лесенкой». Такой способ выравнивания является наиболее популярным на сайтах, поскольку позволяет пользователю легко отыскивать взглядом новую строку и комфортно читать большой текст. right Выравнивание текста по правому краю. Этот способ выравнивания выступает в роли антагониста предыдущему типу. А именно, строки текста равняются по правому краю, а левый остается «рваным». Из-за того, что левый край не выровнен, а именно с него начинается чтение новых строк, такой текст читать труднее, чем, если бы он был выровнен по левому краю. Поэтому выравнивание по правому краю применяется обычно для коротких заголовков объемом не более трех строк. Мы не рассматриваем специфичные сайты, где текст приходится читать справа налево, там возможно подобный способ выравнивания и пригодится. auto Не изменяет положение элемента. inherit Наследует значение родителя. start Аналогично значению left , если текст идёт слева направо и right , когда текст идёт справа налево. end Аналогично значению right , если текст идёт слева направо и left , когда текст идёт справа налево.

    HTML5 CSS2.1 IE Cr Op Sa Fx

    text-align

    Выравнивание по левому краю
    Выравнивание по центру

    Результат данного примера показан на рис. 1.

    Рис. 1. Выравнивание текста в браузере Safari

    Internet Explorer до версии 7.0 включительно несколько иначе трактует данный пример, чем другие браузеры, выравнивая не только текст, но и блоки (рис. 2).

    Рис. 2. Выравнивание текста в браузере Internet Explorer 7

    Объектная модель

    document.getElementById("elementID ").style.textAlign

    Браузеры

    IE до версии 7.0 включительно выравнивает не только содержимое блочного элемента, но и сам элемент.

    Свойство CSS text-align отвечает за горизонтально выравнивание текста, а также картинок и других элементов. У свойства есть 4 возможных варианта выравнивания.

    Синтаксис CSS text-align

    ... text-align : center | justify | left | right | inherit ; ...
    • center - выравнивание по центру области (например ширина области 500 пикселей, значит будет выравнивание по линии 250 пикселей)
    • justify - растягивание текста по всей ширине области
    • left - выравнивание по левому краю
    • right - выравнивание по правому краю
    • inherit - принять значение предка (родителя)

    Чаще всего эти свойства применяются в блоках

    и абзацах

    Примечание:
    Есть также свойство vertical-align , которое отвечает за вертикальное выравнивание.

    Как сделать выравнивание текста в html

    Пример №1.

    Выравнивание текста по левому краю. Действуют по умолчанию.

    Выравнивание текста по левому краю

    Выравнивание текста по левому краю

    Пример №2. Выравнивание текста и картинки по центру

    Выравнивание текста по центру. Зачастую используются для заглавия статей или для вывода картинок по центру.

    Выравнивание текста по центру

    На странице преобразуется в следующее

    Выравнивание текста по левому краю

    Пример №3. Выравнивание текста по правому краю

    Выравнивание текста по правому краю.

    Выравнивание текста по правому краю

    На странице преобразуется в следующее

    Выравнивание текста по правому краю

    Пример №4. Выравнивание текста по ширине всей области

    Выравнивание текста по всей ширине. Получается, что выравнивание происходит и полевому, и по правому краю. Браузер автоматически добавляет пробелы.

    На странице преобразуется в следующее

    Выравнивание текста по ширине всей области

    Иногда text-align: justify; может не работать. Это связано с наследованием и даже с работой браузера. В целом не рекомендуется использовать этот параметр.

    Примечание

    Вместо свойства text-align можно также использовать атрибут align , который пишется вместе с тегом. Его можно использовать у различных тегов. Например:

    Выравнивание по центру

    Выравнивание текста по ширине всей области

    ... ...

    Разница в тегах

    и

    В том, что последний делает переход на новую строку (вертикальный отступ), а div не делает.

    Задаёт выравнивание последней строки блока текста.

    Краткая информация

    Обозначения

    Описание Пример
    <тип> Указывает тип значения. <размер>
    A && B Значения должны выводиться в указанном порядке. <размер> && <цвет>
    A | B Указывает, что надо выбрать только одно значение из предложенных (A или B). normal | small-caps
    A || B Каждое значение может использоваться самостоятельно или совместно с другими в произвольном порядке. width || count
    Группирует значения. [ crop || cross ]
    * Повторять ноль или больше раз. [,<время>]*
    + Повторять один или больше раз. <число>+
    ? Указанный тип, слово или группа не является обязательным. inset?
    {A, B} Повторять не менее A, но не более B раз. <радиус>{1,4}
    # Повторять один или больше раз через запятую. <время>#
    ×

    Значения

    auto Совпадает с выравниванием, заданным свойством text-align , за исключением значения justify . Для него выравнивание будет как start . start Строка выравнивается по начальному краю блока, который может меняться в зависимости от направления текста (слева направо или справа налево). end Строка выравнивается по конечному краю блока, он определяется направлением текста. left Строка выравнивается по левому краю. right Строка выравнивается по правому краю. center Строка выравнивается по центру. justify Строка выравнивается по ширине. Если в последней строке только одно слово, то оно будет выравнено по левому краю.

    Влияние разных значений на положение текста показано в табл. 1.

    Табл. 1. Влияние значений text-align-last
    Значение Выравнивание Вид текста
    left По левому краю
    right По правому краю
    center По центру
    justify По ширине

    Песочница

    Винни-Пух был всегда не прочь немного подкрепиться, в особенности часов в одиннадцать утра, потому что в это время завтрак уже давно окончился, а обед ещё и не думал начинаться. И, конечно, он страшно обрадовался, увидев, что Кролик достаёт чашки и тарелки.

    div { text-align-last: start ; }

    Пример

    text-align-last

    При переходе через горы опирайся на долину; располагайся на высотах, смотря, где солнечная сторона. При бое с противником, находящимся на возвышенности, не иди прямо вверх. Таково расположение войска в горах.

    Объектная модель

    Объект .style.textAlignLast

    Примечание

    Internet Explorer и Edge не поддерживают значения start и end .

    Firefox до версии 49 поддерживает свойство -moz-text-align-last .

    Спецификация

    Каждая спецификация проходит несколько стадий одобрения.

    • Recommendation (Рекомендация ) - спецификация одобрена W3C и рекомендована как стандарт.
    • Candidate Recommendation (Возможная рекомендация ) - группа, отвечающая за стандарт, удовлетворена, как он соответствует своим целям, но требуется помощь сообщества разработчиков по реализации стандарта.
    • Proposed Recommendation (Предлагаемая рекомендация ) - на этом этапе документ представлен на рассмотрение Консультативного совета W3C для окончательного утверждения.
    • Working Draft (Рабочий проект ) - более зрелая версия черновика после обсуждения и внесения поправок для рассмотрения сообществом.
    • Editor"s draft (Редакторский черновик ) - черновая версия стандарта после внесения правок редакторами проекта.
    • Draft (Черновик спецификации ) - первая черновая версия стандарта.
    ×

    Обычно создатель сайта сам решает, какие буквы будут прописными, а какие строчными, исходя из правил правописания и собственных предпочтений. Тем не менее, процесс изменения регистров символов можно автоматизировать, используя свойство text-transform . Данное свойство может принимать четыре значения:

    • none - текст пишется без изменений;
    • capitalize - каждое слово будет начинаться с заглавного символа;
    • lowercase - все символы становятся строчными (нижний регистр);
    • uppercase - все символы становятся прописными (верхний регистр).

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

    H1 {text-transform: uppercase;}

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

    Украшение текста: свойство text-decoration

    Свойство text-decoration позволяет задать тексту дополнительное оформление. Значениями данного свойства являются константы none, underline, overline, line-through и blink , позволяющие отобразить обычный текст, провести линию над, под или через текст, а также сделать текст мигающим. Пример использования различных значений данного свойства приведен на рисунке 11.4 .


    Рис. 11.4.

    Наиболее распространенным применением свойства text-decoration является изменение используемого по умолчанию подчеркивания ссылок. Например, следующее правило указывает, что ссылки должны подчеркиваться:

    A:link {text-decoration: underline;}

    Интервал между словами: свойство word-spacing

    Чтобы задать интервал между словами в тексте, используется свойство word-spacing . Значения данного свойства можно задать с помощью ключевого слова normal , которое используется по умолчанию и задает стандартный интервал для текущего шрифта. Для задания интервала в дополнение к стандартному можно указать значение в любых доступных единицах CSS, причем значение может быть и отрицательным.

    Так, следующее правило увеличивает интервал между словами в заголовке H1 на 1em :

    H1 {word-spacing: 1em;}

    Выравнивание текста: свойство text-align

    Выравниванием называется размещение левого или правого края блока текста вдоль невидимой вертикальной линии. Для выравнивания текста используется свойство text-align . Допустимыми значениями данного свойства являются left, right, center и justify , задающие выравнивание по левому краю, по правому краю, по центру и по ширине соответственно.

    Следующее правило устанавливает выравнивание по центру всех элементов, содержащихся в элементе DIV :

    DIV {text-align: center;}

    Интерлиньяж: свойство line-height

    Интерлиньяжем называется расстояние между базовыми линиями близких друг к другу строк. При обычных обстоятельствах расстояние между строками зависит от вида и размера шрифта и автоматически определяется браузером. Но это значение может быть изменено с помощью свойства line-height . Заданное по умолчанию значение normal заставляет браузер вычислять расстояние между строками автоматически. Любое число больше нуля воспринимается как множитель от размера шрифта текущего текста. В качестве значений данного свойства допустимо также использовать любые единицы длины, принятые в CSS. Разрешается также использовать процентную запись, причем в этом случае за 100% принимается высота шрифта. Отрицательное значение межстрочного расстояния не допускается.

    Интервал между буквами: свойство letter-spacing

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

    Следующее правило увеличивает интервал между символами в заголовке H1 на 0.5em .

    Свойство text-align-last (не путать с HTML align ) определяет, как будет выравниваться последняя строка блока или строка перед принудительным разрывом. Это важно, так как в последней строке абзаца, как правило, не содержится достаточно текста, чтобы заполнить все пространство.

    В этой статье мы рассмотрим все аспекты, касающиеся свойства text-align-last , в том числе принимаемые значения и поддержку браузерами.

    Использование и принимаемые значения

    Применять свойство text-align-last просто. Вот фрагмент кода для выравнивания последней строки текста по правому краю:

    Intro-graph { text-align: justify; // Required for IE and Edge text-align-last: right; }

    Свойство может принимать семь значений. Вам, вероятно, известны стандартные значения HTML text align:left , right и center . Они выравнивают текст в последней строке по правому краю, по левому краю и по центру контейнера.

    Приведенный ниже пример иллюстрирует различия между этими тремя значениями:

    Посмотреть пример

    Четвертое значение, justify , выравнивает последнюю строку таким образом, что текст равномерно распределяется по всей ширине контейнера. Это достигается за счет добавления соответствующего количества пробелов между словами. В зависимости от количества текста это свойство можно использовать, чтобы полностью заполнить пространство в последней строке, но при этом не получить слишком большие разрывы между словами.

    Текст во втором абзаце также распределен по ширине, но так как последняя строка содержит только одно слово, оно располагается слева.

    Посмотреть пример

    Выравнивание последней строки текста по левому краю подходит для языков, которые читаются слева направо (LTR ), но это будет неправильно для языков RTL . В таких случаях использование значений left или right может вызвать проблемы.

    К счастью, можно использовать значение start , чтобы выровнять текст по краю, с которого начинается написание и чтение. Это означает, что, установив для свойства text-align-last значение start , вы выровняете текст по левому краю для языков LTR и по правому краю для языков RTL .

    Также можно использовать значение end , чтобы выровнять текст по противоположному краю от того, с которого начинается написание и чтение. Это будет соответствовать значению right для языков LTR и left для языков RTL .

    Посмотреть пример

    Значение по умолчанию для этого свойства auto . В случае его использования текст в последней строке выравнивается в соответствии со значением свойства HTML text align , если только для него не задано значение justify . Иначе текст распределяется по ширине контейнера, только если для свойства text-justify задано значение distribute . В противном случае текст выравнивается по краю, с которого начинается написание и чтение.

    Важные замечания

    Чтобы text-align-last работало, для свойства text-align должно быть задано значение justify . Но это правило реализовано только в IE и Edge . В Firefox и Chrome свойство работает и без установки для text-align значения justify . В приведенном ниже примере текст должен быть выровнен по правому краю в Edge и IE . В других браузерах последние строки абзацев будут выравниваться в соответствии со значением свойства text-align-last , а остальные строки будут выровнены по правому краю.

    Посмотреть демо-версию

    Если мы не задаем для text-align значение align justify HTML , результат выглядит не столь привлекательно. Поэтому вы, вероятнее всего, установите распределение текста по ширине.

    Свойство работает, даже если в абзаце присутствует принудительный разрыв строки, заданный с помощью тега
    или чего-то в этом роде. Имейте в виду, что это свойство будет влиять на все последние строки текста внутри указанного элемента, а не только на самую крайнюю. Например, если текст внутри элемента article или div содержит три абзаца, в каждом из них последняя строка будет выравниваться в соответствии со значением свойства text-align-last , заданным для всего родительского элемента.

    Если нужно выровнять только самую последнюю строку контента, то можно использовать селекторы :last-child или :last-of-type . Возьмите код из приведенной ниже демо-версии в качестве примера:

    article { text-align: justify; } article p:last-of-type { text-align-last: right; }

    Он выравнивает последнюю строку последнего абзаца нашей статьи по правому краю. Остальные строки выравниваются на основе значения свойства HTML text align .

    Посмотреть демо-версию

    Также можно использовать другие селекторы: :even и :odd , чтобы изменить выравнивание.

    Иногда абзац может состоять только из одной строки. В этом случае, если вы указали значения и для свойства text-align , и для свойства text-align-last , то последнее свойство будет иметь приоритет.

    Рассмотрим следующий фрагмент кода:

    p { text-align: justify; } p:nth-of-type(2) { text-align-last: left; }

    Если второй абзац имеет только одну строку, то текст будет выравниваться по левому краю, потому что text-align-last будет иметь приоритет. В приведенной ниже демо-версии показан данный код CSS в действии, а также несколько других примеров HTML align .

    Посмотреть демо-версию

    Поддержка браузерами

    Поддержка этого свойства может быть включена с помощью опции «Включить экспериментальные функции веб-платформы » в Google Chrome и Opera , начиная с версий 35 и 22 соответственно. Оно полностью поддерживается в Chrome 47+ и Opera 34+ .

    Чтобы использовать это свойство в Firefox , придется добавлять префикс -moz- . Значения start и end не поддерживаются IE . В то же время, Edge полностью поддерживает это свойство. Единственный популярный браузер, который полностью не поддерживает text-align-last — это Safari .