-
Notifications
You must be signed in to change notification settings - Fork 2
CSS text
При работе с текстом нужно знать о строчных и блочных элементах, о чем подробнее речь пойдет далее
В качестве контейнеров для текста обычно выступают следующие элементы:
-
p- параграф ( абзац текста ) -
h1|h2|h3|h4|h5|h6- заголовки
Эти элементы по умолчанию занимают всю ширину страницы
<body>
<h1>Header</h1>
<h2>Sub-header</h2>
<p>The word-break property in CSS can be used to change when line breaks ought to occur.
Normally, line breaks in text can only occur in certain spaces,
like when there is a space or a hyphen</p>
</body>![]() |
|---|
Однако мы можем установить ширину этих элементов с помощью CSS:
<head>
<style>
h1, h2 { width: 200px; }
p { width: 300px; }
</style>
</head>
<body>
<h1>Header</h1>
<h2>Sub-header</h2>
<p>The word-break property in CSS can be used to change when line breaks ought to occur.
Normally, line breaks in text can only occur in certain spaces,
like when there is a space or a hyphen</p>
</body>![]() |
|---|
Эти элементы называют блочными, поскольку по умолчанию они не позволяют другим элементам располагаться справа или слева - только сверху или снизу
Как видите, даже когда размер блочного элемента значительно меньше ширины страницы, он все равно находится в гордом одиночестве, и пространство слева от него остается пустым
Свойство выравнивает строки текста внутри блока по ширине относительно его границ.
<head>
<style>
h1 { text-align: center; }
h2 { text-align: right; }
h3 { text-align: left; }
p { text-align: justify; }
</style>
</head>
<body>
<h1>Заголовок первого уровня</h1>
<h2>Заголовок второго уровня</h2>
<h3>Заголовок третьего уровня</h3>
<p>The word-break property in CSS can be used to change when line breaks ought to occur.
Normally, line breaks in text can only occur in certain spaces,
like when there is a space or a hyphen</p>
</body>![]() |
|---|
Вертикальное выравнивание мы будем подробнее изучать далее
Если вы вставите в текст несколько пробелов подряд, браузер по умолчанию будет выводить их как один единственный пробел
Это не всегда удобно
Для вывода текста "как есть" можно воспользоваться элементом pre
Сравним вывод текста в элементе pre с выводом такого же текста, но с помощью обычного элемента p
Для чистоты эксперимента в контейнер head нужно вставить meta-тег, управляющий отображением страницы на различных девайсах:
<meta name="viewport"
content="width=device-width,
initial-scale=1.0,
maximum-scale=1.0,
user-scalable=no">Итак, вставим на страницу следующую разметку:
<pre>
_____________________________________________________
The word-break property in CSS
can be used to change
when line breaks ought to occur
Normally, line breaks in text
can only occur in certain spaces,
like when there is a space or a hyphen
______________________________________________________
</pre>
<p>
_____________________________________________________
The word-break property in CSS
can be used to change
when line breaks ought to occur
Normally, line breaks in text
can only occur in certain spaces,
like when there is a space or a hyphen
______________________________________________________
</p>и посмотрим, что у нас получилось:
![]() |
|---|
Теперь внесем небольшие изменения в нашу разметку с помощью CSS
добавим стилевой атрибут white-space со значением pre элементу p:
<head>
<style>
p {
white-space: pre;
}
</style>
</head>
<body>
<pre>
_____________________________________________________
The word-break property in CSS
can be used to change
when line breaks ought to occur
Normally, line breaks in text
can only occur in certain spaces,
like when there is a space or a hyphen
______________________________________________________
</pre>
<p>
_____________________________________________________
The word-break property in CSS
can be used to change
when line breaks ought to occur
Normally, line breaks in text
can only occur in certain spaces,
like when there is a space or a hyphen
______________________________________________________
</p>
</body>Теперь элемент p ведет себя так же, как элемент pre:
![]() |
|---|
| Возможные значения | |
|---|---|
normal |
Значение по умолчанию Повторяющиеся пробелы и разрывы строк игнорируются, текст переносится по обычным правилам |
nowrap |
Повторяющиеся пробелы и разрывы строк игнорируются, причем разрывы строк подавляются даже тогда, когда текст выходит за границы контейнера |
pre |
Текст выводится "как есть", т.е. выводятся повторяющиеся пробелы и переводы строк, а перевод строки при переполнении ширины контейнера не работает |
pre-line |
Повторяющиеся пробелы игнорируются, текст переносится по обычным правилам, но перевод строки учитывается В старых версиях браузеров поддержка не полная |
pre-wrap |
Аналогично значению pre за исключением того, что строка переносится при переполнении ширины контейнера |
![]() |
|---|
Мы уже убедились, что контенер для текста может переполняться
Давайте посмотрим еще раз
Создадим два конейнера для текста ( элементы p )
Ограничим их размер шириной 400 и высотой 200 пикселей
p {
width: 400px;
height: 200px;
}На картинке контейнеры p обозначены красной рамкой
Во втором контейнере есть текст, и, как мы видим, этот текст выходит за границы контейнера ( переполнение )
Произошло переполнение ( overflow )
Если теперь вставить текст в первый контейнер, и этот текст также будет превышать размер контейнера p, то произойдет крайне неприятная вещь - текст из первого контейнера наложится на текст второго элемента p
![]() |
|---|
Для разрешения таких ситуаций есть CSS-атрибут overflow
| Возможные значения | |
|---|---|
visible |
Значение по умолчанию Текст может отображаться снаружи контейнера |
hidden |
Текст обрезается, прокрутки нет |
scroll |
Текст обрезается Полосы прокрутки появляются в любом случае, даже если нет необходимости ( текст не переполняет контейнер ) |
auto |
Прокрутка появляется только при необходимости, т.е. если текст переполняет контейнер |
![]() |
|---|
Теперь рассмотрим ситуацию, когда
Свойство задаёт расстояние между базовыми линиями строк текста, определяя величину, на которую увеличивается или уменьшается высота блока каждого элемента.
h1 {
font-size: 16px;
line-height: 20px;
}Используя различные шрифты для заголовков, абзацев и других элементов, можно задавать определенный стиль письменных сообщений, передавая желаемые эмоции и настроение.
-
px – абсолютные, чёткие, понятные;
-
em – относительно размера шрифта;
-
rem - задаёт размер относительно размера шрифта элемента <html>;
-
% – относительно такого же свойства родителя;
-
vw – 1% ширины окна;
-
vh – 1% высоты окна.
Текст

Горизонтальное выравнивание





Всемирная паутина
Пример
