line-height | rpilot62.ru

Здесь мы рассмотрим, как соотносятся размеры шрифта и строки, и как их правильно задавать.

font-size и line-height

  • размер шрифта, в частности, определяющий высоту букв.
  • высота строки.

Для наглядности посмотрим пример HTML, в котором шрифт и размер строки одинаковы:

Размер шрифта – это абстрактное значение, которое привязано к шрифту, и даётся в типографских целях.

Обычно оно равно расстоянию от самой верхней границы букв до самой нижней, исключая «нижние хвосты» букв, таких как , . Как видно из примера выше, при размере строки, равном , строка не будет размером точно «под букву».

В зависимости от шрифта, «хвосты» букв при этом могут вылезать, правые буквы и в примере выше пересекаются как раз поэтому.

В некоторых особо размашистых шрифтах «хвосты букв» могут быть размером с саму букву, а то и больше. Но это, всё же исключение.

Обычно размер строки делают чуть больше, чем шрифт.

По умолчанию в браузерах используется специальное значение .

Оно означает, что браузер может принимать решение о размере строки самостоятельно. Как правило, оно будет в диапазоне , но стандарт не гарантирует этого, он говорит лишь, что оно должно быть «разумным» (дословно – англ. reasonable).

Множитель для line-height

Значение можно указать при помощи или , но гораздо лучше – задать его числом.

Значение-число интерпретируется как множитель относительно размера шрифта. Например, значение с множителем при будет аналогично .

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

  • Значение, заданное множителем, наследуется и применяется в каждом элементе относительно его размера шрифта.

    То есть, при означает, что высота строки будет равна удвоенному размеру шрифта, не важно какой шрифт.

  • Значение, заданное в единицах измерения, запоминается и наследуется «как есть».

    Это означает, что будет всегда жёстко задавать высоту строки, даже если шрифт во вложенных элементах станет больше или меньше текущего.

Давайте посмотрим, как это выглядит, на примерах:

Множитель,

Конкретное значение,

Какой вариант выглядит лучше? Наверно, первый.

В нём размер строки более-менее соответствует шрифту, поскольку задан через множитель.

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

Синтаксис font: size/height family

Установить и можно одновременно.

Соответствующий синтаксис выглядит он так:

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

Дополнительно можно задать и свойства , :

Итого

Размер строки, обычно он больше размера шрифта. При установке множителем рассчитывается каждый раз относительно текущего шрифта, при установке в единицах измерения – фиксируется.
Размер шрифта. Если сделать блок такой же высоты, как шрифт, то хвосты букв будут вылезать из-под него.
Даёт возможность одновременно задать размер, высоту строки и, собственно, сам шрифт.

Свойства CSS. Интервалы (стр.1).

 

Цвет и фон ||  Шрифт ||  Изменение размера шрифта ||  Текст и его свойства ||  Интервалы

Как правило, для каждого шрифта определенного размера заранее установлены величины пробелов между словами, расстояние между буквами внутри слова и визуальная высота строки. Следует отметить, что расстояние между разными буквами в моноширинных шрифтах, таких как Courier New, всегда одинаковое. В других типах шрифтов межбуквенное расстояние зависит от буквосочетаний — в большинстве случаев оно фиксировано, но между некоторыми парами букв оно намеренно уменьшается, чтобы визуально сделать текст более «ровным» и равномерно распределенным. Например, между буквами АУ расстояние меньше, чем между буквами НП, так как буквы Н и П по своей форме прямые, а буквы А и У со скосами, причем направленными в одну сторону. При одинаковом расстоянии между буквами, А и У будут казаться стоящими дальше друг от друга, чем Н и П. Для того чтобы смягчить этот эффект, расстояние между ними чуть-чуть уменьшается, в результате чего визуально строка текста выравнивается.

Это явление — одно из ярких проявлений обмана зрения.

В CSS для текстовых блоков можно регулировать размеры расстояний между словами в тексте, т.е., по сути, менять размер пробела. Также можно менять расстояния между буквами внутри слова (т.е. создавать уплотненный или разреженный текст) и управлять высотой текстовой строки. Высота строки — это расстояние между базовыми линиями двух соседних строк.

Аналогов таких свойств в HTML нет.

Интервалы можно задавать только средствами CSS.

Свойство word-spacing

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

Рассмотрим пример:

Р { word-spacing: 2 ex; }

Изменение расстояния между словами с помощью свойства word-spacing.

Параграф с расстоянием между словами, равным 1 ех Параграф с расстоянием между словами, равным — 0.2ех

Свойство letter-spacing

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

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

Оба свойства word-spacing и letter-spacing можно использовать совместно, так как при увеличении расстояния между буквами, для того чтобы сохранить читаемость и разделить слова, может потребоваться одновременно увеличить и расстояние между словами. Вот типичный пример оформления заголовка:

Н1 { word-spacing: 2 ex; letter-spacing: 0.3ех }

 

Страница: — 1 — | — 2 —

 

Цвет и фон ||  Шрифт ||  Изменение размера шрифта ||  Текст и его свойства ||  Интервалы

 

 

line-height

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

12.0+ 4.0+ 1.0+ 1.0+ 7.0+ 1.0+

Описание

Межстрочный интервал (интерлиньяж) — типографский термин, обозначающий расстояние между строками текста. Часть символа, располагающаяся ниже базовой линии, называется нижним выносным элементом, в то время как самая высокая точка символа называется верхним выносным элементом. Межстрочный интервал измеряется от нижней части нижнего выносного элемента на одной строке до верхнего выносного элемента на следующей строке.

В CSS свойство устанавливает высоту всей строки текста, поэтому разница между размером шрифта (font-size) и высотой строки () соответствует межстрочному интервалу.

Увеличение значения свойства приводит к увеличению расстояния между строками текста.

Увеличение межстрочного интервала может улучшить читабельность текста. Кроме того, это позволяет обеспечить визуальное разделение текста на различные части.

Примечание: по умолчанию во всех браузерах межстрочный интервал равен 120-125% от размера текущего шрифта. Использование отрицательных значений не допускается.

Для регулирования расстояний между словами используйте CSS свойство word-spacing, для изменения расстояния между буквами — letter-spacing.

Значение по умолчанию: normal
Применяется: ко всем элементам
Анимируется: да
Наследуется: да
Версия: CSS1
Синтаксис JavaScript: object.style.lineHeight=»2″

Синтаксис

line-height: normal|число|высота|inherit;

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

Значение Описание
normal Стандартный межстрочный интервал.
число Число, которое будет умножено на текущий размер шрифта для определения межстрочного интервала.
высота Высота задается с помощью единиц измерения, используемых в CSS.
% Высота межстрочного интервала в процентах от текущего размера шрифта.
inherit Указывает, что значение наследуется от родительского элемента.

Пример

div {
line-height: normal;
}

Пример демонстрирует, как с помощью свойства line-height можно изменять расстояние между строк текста.

Добавить комментарий

Закрыть меню