правильный выбор шрифта, размера и межстрочного интервала снижает нагрузку на глаза
заголовки, акцентные элементы и цветовые различия помогают пользователю быстро воспринимать информацию
стилизация текста формирует облик сайта и влияет на восприятие бренда
модель, представляющая CSS-стили на веб-странице как объектную структуру, доступную для программирования
body {
color: navy;
font-family: Arial, sans-serif;
}
p {
font-size: 18px;
}
Весь текст в body (включая p) будет navy, но размер
font-size в p нужно задавать отдельно
Если свойство не наследуется, но его нужно передать
дочерним элементам, то можно использовать
inherit
p {
all: inherit;
}
Чтобы сбросить стиль, используется:
значение по умолчанию браузера
сброс к inherit или initial
p {
color: initial; /* сбросит цвет к черному */
}
em
(размер шрифта родительского элемента)
rem
(размер шрифта корневого элемента (
html
))
%
(размер шрифта родительского элемента)
px
(пиксели)
pt
(пункты)
pc
(пика)
vw
(ширине области просмотра)
vh
(высота области просмотра)
ch
(ширине символа "0")
задают фиксированный размер, который не зависит от других факторов, таких как настройки браузера или размер экрана
pxзадают фиксированный размер шрифта
p {
font-size: 16px;
}
ptединица измерения, широко используемая в печати
h1 {
font-size: 12pt;
}
pcединица измерения, широко используемая в печати
h1 {
font-size: 1pc;
}
их значение зависит от других параметров, таких как размер шрифта родительского элемента или устройства, на котором отображается контент
emзависит от размера шрифта родительского элемента
div {
font-size: 2em; /* x2 от родители */
}
remосновывается на размере шрифта корневого элемента (обычно это <html>)
html {
font-size: 16px; /* Базовый размер шрифта */
}
h1 {
font-size: 2rem; /* 2 * 16px = 32px */
}
%для установки размеров шрифта в зависимости от размера шрифта родительского элемента
div {
font-size: 150%; /* 150% от размера шрифта родительского элемента */
}
viewport widthЕдиница измерения, основанная на ширине области просмотра. 1vw равен 1% от ширины окна браузера
div {
width: 50vw;
}
width
,
height
)
viewport heightЕдиница измерения, основанная на высоте области просмотра. 1vh равен 1% от высоты окна браузера
div {
width: 50vw;
}
width
,
height
)
characterЕдиница измерения, равная ширине символа "0" в текущем шрифте
div {
width: 20ch; /* Ширина, равная ширине 20 символов "0" */
}
группа шрифтов, имеющих схожие стилистические характеристики
body {
font-family: "Roboto", "Helvetica", sans-serif;
}
h1 {
font-family: "Georgia", "Times New Roman", serif;
}
Serif-шрифты отличаются наличием небольших «хвостиков» (засечек) на концах букв
помогают глазу легче следовать за строкойНапример: Times New Roman , Georgia , Garamond , Palatino Linotype
Sans-serif-шрифты не имеют засечек, из-за чего выглядят более современно, минималистично
Например: Arial , Helvetica , Verdana , Roboto
каждая буква занимает одинаковое пространство
Например: Courier New , Consolas , Fira Code , Source Code Pro
й
- 14 символ
l
- 14 символ
шрифты имитируют рукописный стиль, придавая тексту неформальный или художественный вид
Например: Comic Sans , Brush Script MT , Dancing Script , Pacifico
Fantasy-шрифты предназначены для декоративных целей
Например: Impact , Papyrus , Jokerman
Serif - лучше для длинных текстов
Sans-serif - удобнее в интерфейсах
Monospace - подходит для кода
Cursive - создаёт рукописный эффект
Fantasy - используется в специфичных случаях
font-family
определяет, какой шрифт будет использован в тексте
p {
font-family: "Arial", "Helvetica", sans-serif;
}
"Times New Roman"
sans-serif
или
serif
Некоторые шрифты уже установлены на большинстве устройств
Чтобы использовать шрифт, которого нет на устройстве
пользователя, его можно загрузить с сервера с
помощью
@font-face
@font-face {
font-family: "CustomFont";
src: url("fonts/customfont.woff2") format("woff2"),
url("fonts/customfont.woff") format("woff");
}
h1 {
font-family: "CustomFont", sans-serif;
}
Google Fonts предоставляет бесплатные веб-шрифты, которые можно легко подключить через CSS
<link href="https://fonts.googleapis.com/css2?family=Roboto:wght@400;700&display=swap" rel="stylesheet">
body {
font-family: "Roboto", sans-serif;
}
@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;700&display=swap');
body {
font-family: "Roboto", sans-serif;
}
font-size
font-size: 3rem;
font-style
font-style: italic;
letter-spacing
letter-spacing: 6px;
line-height
line-height: 1.5;
Может указываться как абсолютное значение (
px
,
rem
и тд), так и коэффициент (обычно от
1.4
-
1.6
)
word-spacing
word-spacing: 3rem;
text-indent
text-indent: 2rem;
white-space
white-space: pre-wrap;
word-break
word-break: break-all;
font-weight
font-weight: 100;
| Ключевое слово | Числовое значение |
| thin | 100 |
| extra-light | 200 |
| light | 300 |
| normal | 400 |
| medium | 500 |
| semi-bold | 600 |
| bold | 700 |
| extra-bold | 800 |
| black | 900 |
Например, если у шрифта есть только 400 и 700, браузер просто выберет ближайший доступный вариант если задать 600
text-align
text-align: right;
text-transform
text-transform: capitalize;
text-decoration
text-decoration: overline;
text-shadow
text-shadow: 5px 5px #558abb;
overflow-wrap
overflow-wrap: break-word;
text-overflow
text-overflow: ellipsis;