Работа с текстом в CSS

Свойства шрифта в CSS

CSS дает широкие возможности по оперированию стилем текста. Можно влиять на шрифт, цвет, размер и другие свойства текста.

Так как эта страница расчитана на новичков, то сначала напомним базовый синтаксис CSS и используемую терминологию.

Каждое правило CSS состоит из селектора и определения. Селектор - обычно это тег, к которому мы применяем наш стиль, а определение - это само стилевое отображение. Определение состоит из свойства и его значения. Например: свойство - цвет, значение - красный.

Синтаксис CSS следующий:

селектор { свойство: значение }

Пример правила CSS:

p { color: blue }

В этом примере задано правило тегу <p> отображать текст синим цветом. Одному селектору можно указать несколько пар (свойство : значение).

p { color: blue; font-size: 10pt }

В этом примере задано правило тегу <p> отображать текст синим цветом и размером 10pt. То есть тут мы имеем две пары (свойство : значение) применённые к одному селектору, в данном случае к тегу абзаца <p>.

В дальнейшем, когда в тексте будут встречаться слова свойство и значение, будет иметься ввиду именно определение для селектора в правиле CSS.

Свойства шрифта

Свойство font-family
Свойство Значение Описание Пример
font-family имя шрифта Устанавливает шрифт из списка P {font-family: Arial, sans-serif}

Если не указывать это свойство в CSS, то броузер будет показывать текст шрифтом по умолчанию. Обычно это Times New Roman.

Список шрифтов в значении font-family может включать одно или несколько названий, разделенных запятой. Если в имени шрифта содержатся пробелы, например, Trebuchet MS, оно должно заключаться в кавычки, одинарные или же двойные.

Браузер поочерёдно проверяет наличие шрифтов из списка на компьютере пользователя. Если первый шрифт в списке есть, то используется он, иначе браузер проверяет наличие второго шрифта из списка. Если ни одного нет, используется шрифт по умолчанию. В конце списка обычно прописывают ключевые слово, которое описывает тип желаемого шрифта — serif, sans-serif, fantasy, cursive или monospace.

Универсальные семейства шрифтов:

  • serif — антиквенные шрифты (шрифты с засечками), типа Times;
  • sans-serif — рубленные шрифты (шрифты без засечек или гротески), типичный представитель — Arial;
  • monospace — моноширинные шрифты, ширина каждого символа в таком семействе одинакова (шрифт Courier).
  • fantasy — семейство декоративных шрифтов;
  • cursive — семейство курсивных шрифтов;

Пример с использованием:

<!DOCTYPE html>
<html>
<head>
	<title>Пример использования font-family</title>
	<style>
		h1 { font-family: Arial, sans-serif }
		h2 { font-family: Georgia, Times, serif }
	</style>
</head>
<body>
	<h1>Заголовок h1</h1>
	<h2>Заголовок h2</h2>
</body>
</html>

Следующее свойство:

Свойство font-style
Свойство Значение Описание Пример
font-style normal
italic
oblique
Нормальный шрифт
Курсив
Наклонный шрифт
P {font-style: oblique}

Пример кода, в этом примере встроим стили в тег при помощи атрибута style.

<!DOCTYPE html>
<html>
<head>
	<title>Пример использования font-style</title>
</head>
<body>
<p style="font-style: normal">Пример нормального шрифта.</p>
<p style="font-style: italic">Пример курсива.</p>
<p style="font-style: oblique">Пример наклонного шрифта.</p>
</body>
</html>

Видно что курсив от наклонного шрифта внешне не отличается.

Следующее свойство:

Свойство font-variant
Свойство Значение Описание Пример
font-variant normal
small-caps
Устанавливает капитель (особые прописные буквы) P {font-variant: small-caps}

Капитель — так в типографике называется текст, в котором строчные знаки выглядят, как уменьшенные прописные. Следует различать капитель и просто уменьшенные прописные буквы. Капительные буквы несколько выше строчных и имеют, как правило, чуть расширенные пропорции.

<!DOCTYPE html>
<html>
<head>
	<title>Пример использования font-variant</title>
</head>
<body>
	<p>Обычный текст.
	<span style="font-variant: small-caps">Текст капителью</span>.</p>
	<p style="font-variant: normal">Опять обычный текст.</p>
</body>
</html>

Следующее свойство:

Свойство font-weight
Свойство Значение Описание Пример
font-weight normal
lighter
bold
bolder
100–900
Нормальная жирность
Светлое начертание
Полужирный
Жирный
100 — светлый шрифт,
900 — самый жирный
P {font-weight: bolder}

Свойство font-weight устанавливает насыщенность шрифта. Для этого в значении используются ключевые слова: bold — полужирное начертание, normal — нормальное начертание. Значение может быть установленно в диапазоне от 100 до 900 с шагом 100. Сверхсветлое начертание, которое может отобразить браузер, имеет значение 100, а сверхжирное — 900. Нормальное начертание шрифта (normal, которое установлено по умолчанию) соответствует 400, стандартный полужирный текст, bold, — значению 700.

Браузеры обычно не могут точно показать требуемую насыщенность шрифта, поэтому переключаются между значениями bold, normal и lighter. На практике же начертание в большинстве браузеров обычно ограничено только двумя вариантами: нормальное начертание и жирное начертание.

Значения lighter и bolder изменяют жирность шрифта относительно насыщенности родителя, соответственно, в меньшую и большую сторону.

<!DOCTYPE html>
<html>
<head>
	<title>Пример использования font-weight</title>
</head>
<body>
	<p>Обычный текст. <span style="font-weight: bold">Текст bold</span>.</p>
	<p style="font-weight: normal">Опять обычный текст.</p>
</body>
</html>

Следующее свойство:

Свойство font-size - определяет размер шрифта элемента. Размер шрифта можно задать несколькими способами.

Свойство font-size
Свойство Значение Описание Пример
font-size normal
pt
px
%
нормальный размер
пункты
пикселы
проценты
font-size: normal
font-size: 11pt
font-size: 11px
font-size: 110%

Абсолютный размер кегля шрифта может задаваться с использованием ключевых слов: xx-small (крайне малый), small (малый), medium (средний, значение по умолчанию), large (большой), x-large (очень большое), xx-large (крайне большое). Абсолютные размеры шрифта зависят от настроек браузера и операционной системы, так что они не совсем абсолютны.

Для изменения размера текста относительно родителя используется другой набор констант (larger - увеличивает размер относительно родительского, smaller - уменьшает размер).

<!DOCTYPE html>
<html>
<head>
	<title>Пример использования font-size.</title>
</head>
<body>
	<p>Обычный текст.</p>
	<p style="font-size: xx-small">Текст xx-small.
	<span style="font-size: larger">Текст larger</span>.</p>
	<p style="font-size: small">Текст small.</p>
	<p style="font-size: medium">Текст medium.</p>
	<p style="font-size: large">Текст large.</p>
	<p style="font-size: x-large">Текст x-large.</p>
	<p style="font-size: xx-large">Текст xx-large.</p>
	<p style="font-size: normal">Опять обычный текст.</p>
	<p style="font-size: 150%">Текст 150%.</p>
	<p style="font-size: 15px">Текст 15px.
	<span style="font-size: larger">Текст larger</span>.</p>
</body>
</html>

Свойства текста

Кроме работы со шрифтами, CSS даёт ряд инструментов для работы с свойствами самого текста.

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

Свойство line-height
Свойство Значение Описание Пример
line-height normal
множитель
значение
%
Межстрочный интервал (интерлиньяж) line-height: normal
line-height: 1.5
line-height: 12px
line-height: 120%

При установке межстрочного интервала отчёт идёт от базовой линии шрифта. По умолчанию расстояние между строками текста зависит от вида и размера шрифта и определяется браузерами автоматически. Отрицательное значение интерлиньяжа не допускается.

<!DOCTYPE html>
<html>
<head>
	<title>Работа с межстрочным интервалом</title>
</head>
<body>
	<p>Обычный текст. Первая строка.
	<br>Вторая строка.
	<br>Третья строка.</p>
	<p style="line-height: 2.1">Изменённый текст. Первая строка.
	<br>Вторая строка.
	<br>Третья строка.</p>
</body>
</html>

При процентной записи за 100% берется высота шрифта.

Следующее свойство:

Свойство text-decoration
Свойство Значение Описание Пример
text-decoration none
underline
overline
line-through
blink
Убрать все оформление
Подчеркивание
Линия над текстом
Перечеркивание
Мигание текста
text-decoration: line-through

При помощи определения { text-decoration: none } можно убирать подчеркивание у ссылок, которое устанавливается в браузерах по умолчанию.

<!DOCTYPE html>
<html>
<head>
	<title>Работа с свойством text-decoration.</title>
	<style>
		a { text-decoration: none }
	</style>
</head>
<body>
	<p>Поисковик <a href="http://google.com">Google</a>.</p>
</body>
</html>

В примере ссылка не имеет линии подчёркивания.

Следующее свойство:

Свойство text-transform - управляет отображением букв, можно устанавливать заглавные или прописные символы в зависимости от выбранного значения.

Свойство text-transform
Свойство Значение Описание Пример
text-transform none
capitalize
uppercase
lowercase
Убрать все эффекты
Начинать С Прописных
ВСЕ ПРОПИСНЫЕ
все строчные
text-transform: uppercase

Пример использования:

<!DOCTYPE html>
<html>
<head>
	<title>Работа с свойством text-transform.</title>
</head>
<body>
	<p style="text-transform: none">Текст none.</p>
	<p style="text-transform: capitalize">Текст capitalize.</p>
	<p style="text-transform: uppercase">Текст uppercase.</p>
	<p style="text-transform: lowercase">Текст lowercase.</p>
</body>
</html>

Сравните текст который содержится в html-коде с текстом в окне браузера.

Следующее свойство:

Свойство text-align - служит для выравнивания текста по горизонтали окна браузера или контейнера, в котором расположен блок текста.

Свойство text-align
Свойство Значение Описание Пример
text-align left
right
center
justify
Выравнивание текста text-align: right

Подробное описание значений:

  • center - текст выравнивается по центру.
  • justify - выравнивание по ширине, фактически это выравнивание по правому и левому краю одновременно, между словами текста образовываются пустые места, которые браузер заполняет пробелами.
  • left - выравнивание по левопу краю. Это значение используется по умолчанию.
  • right - выравнивание по правому краю.

Пример использования этого свойства будет совмещён с примером работы следующего свойства.

Следующее свойство:

Свойство text-indent - служит для создания величины отступа первой строки блока текста (например, для абзаца <p>).

Это свойство допускает отрицательное значение, в таком случае создается выступ первой строки.

Свойство text-indent
Свойство Значение Описание Пример
text-indent значение
%
Отступ первой строки text-indent: 15px;
text-indent: 10%
<!DOCTYPE html>
<html>
<head>
	<title>Работа со свойствами text-align и text-indent.</title>
	<style>
		p { text-indent: 15px }
	</style>
</head>
<body>
<p style="text-align: left">Работа со свойствами text-align и text-indent.
Для лучшего понимания работы кода откройте страницу
в новом окне и уменьшите его размер.</p>
</body>
</html>