Текст
Text выводит фрагмент текста в одной из типографских ролей системы. Вид (variant) и элемент (as) задаются отдельно.
<tk-text variant="title-md" as="h3">Billing history</tk-text> <tk-text>Your plan renews on 27 March 2026.</tk-text> <tk-text variant="caption" color="secondary">Prices include VAT.</tk-text>
Анатомия
| Часть | Что это |
|---|---|
tk-text |
сам элемент; выводит тег, выбранный в as |
| слот по умолчанию | текст, обязателен; он же доступное имя |
part text |
выведенный элемент внутри |
Варианты
<tk-text variant="display-sm">Display Small</tk-text> <tk-text variant="title-sm">Title Small</tk-text> <tk-text variant="heading-md">Heading Medium</tk-text> <tk-text variant="body-md">Body Medium</tk-text> <tk-text variant="label-md">Label Medium</tk-text> <tk-text variant="code-sm">Code Small</tk-text>
variant — типографская роль. Размер, высота строки, начертание и семейство шрифта
берутся из неё.
variant |
Размер / высота строки | Начертание |
|---|---|---|
display-lg |
64 / 72 | 600 |
display-md |
48 / 56 | 600 |
display-sm |
40 / 48 | 600 |
title-lg |
32 / 40 | 600 |
title-md |
28 / 32 | 600 |
title-sm |
24 / 28 | 600 |
heading-md |
20 / 24 | 600 |
heading-sm |
18 / 24 | 600 |
body-lg |
18 / 28 | 400 |
body-md (по умолчанию) |
16 / 24 | 400 |
body-sm |
14 / 20 | 400 |
label-lg |
16 / 24 | 500 |
label-md |
14 / 20 | 500 |
label-sm |
12 / 16 | 500 |
caption |
12 / 16 | 400 |
code-md |
16 / 24 | 400, моноширинный |
code-sm |
14 / 20 | 400, моноширинный |
- Display: промо-заголовки. Title: заголовки страниц и разделов. Heading: короткие заголовки внутри блока.
- Body: основной текст. Label: текст интерфейса. Caption: тихий вспомогательный текст.
- Code: машинный текст моноширинным шрифтом.
Элемент
<tk-text variant="title-md" as="h3">Billing history</tk-text> <tk-text variant="body-lg" as="h2">Welcome back</tk-text>
as задаёт настоящий HTML-элемент: p (по умолчанию), span, div, label, code
или h1–h6. Скринридеры и навигация по заголовкам видят именно его.
- Уровень заголовка выбирайте по структуре страницы, а потом подбирайте
variantпо виду. Одинh1на страницу, уровни не пропускайте. spanиcodeстрочные: ими оформляют фразу внутри другого текста.as="code"не меняет шрифт. Добавьтеcode-mdилиcode-sm.as="label"не подписывает поле формы. Для этого естьField .
Цвет
<tk-text color="secondary">Last edited by Ada</tk-text> <tk-text color="success">Payment received</tk-text> <tk-text color="error">Card declined</tk-text>
color принимает роль текста, поэтому работает в любой теме.
color |
Для чего |
|---|---|
default (по умолчанию) |
основной текст |
secondary |
вспомогательный текст |
tertiary |
самый неважный текст |
accent |
акцент цветом; не кликается |
success / warning / error / info |
текст статуса |
inverse |
текст на инверсной (тёмной) поверхности |
Цвет статуса — только для этого статуса, не для украшения. Цветов плейсхолдера, отключённого состояния и текста на заливке здесь нет: их задают компоненты, которым они нужны.
Начертание, выравнивание, обрезка, курсив
<tk-text>This word is <tk-text as="span" weight="bold">important</tk-text>.</tk-text> <tk-text align="center">Centered text</tk-text> <tk-text italic color="secondary">Photo by the author</tk-text> <div style="max-inline-size: 16rem"> <tk-text truncate>Quarterly report for the north-east region, final draft</tk-text> </div>
weight:regular(400),medium(500),semibold(600) илиbold(700). Меняется только начертание. Подходит для жирного слова в тексте, а не для имитации заголовка.align:start,centerилиend; учитывают направление письма. Без него текст выравнивается как контейнер.truncate: одна строка с многоточием. Нужна ограниченная ширина. Скринридер всё равно читает текст целиком; если полный текст нужен и зрячим, добавьтеTooltip .italic: курсив для всего фрагмента, только оформление. Для логического ударения внутри предложения используйте<em>.
Внешних отступов у Text нет. Расстояние между блоками задаёт раскладка, либо возьмите
Когда использовать
- Text — для любого текста содержимого: абзацев, заголовков, подписей, пояснений, кода внутри строки.
asзадаёт элемент,variantзадаёт вид. Настоящий<h2>может выглядеть как Title Medium. Отдельного компонента заголовка нет.- Для авторского текста берите
Prose , например для статьи или справки, где важны отступы между абзацами. - Для кликабельного текста нужна
ссылка иликнопка , а не Text с обработчиком нажатия.
Можно / нельзя
| ✅ Можно | ❌ Нельзя |
|---|---|
as по структуре, variant по дизайну |
Выбирать уровень заголовка по размеру |
Настоящий h2 для заголовка раздела |
Изображать заголовок крупным абзацем |
weight="bold" для жирного слова |
Элемент заголовка ради жирного текста |
color="error" для текста ошибки |
Цвет статуса для украшения |
| Текст переносится | Обрезать нужный текст без способа его прочитать |
| Ссылка для перехода | Обработчик нажатия на Text |
Связанные
Prose : авторский текст с отступами между абзацами, списками и цитатами.Link : текст, который ведёт на другую страницу.Code block : многострочный код; Text сcode-*— для кода внутри строки.Kbd : клавиша клавиатуры.Page header : заголовок страницы и описание из Text.
API
Атрибуты
| Атрибут | Тип | По умолчанию | Что делает |
|---|---|---|---|
variant |
одна из 17 ролей выше | body-md |
типографская роль |
as |
p | span | div | label | code | h1–h6 |
p |
выводимый элемент; неизвестное значение даёт p |
weight |
regular | medium | semibold | bold |
начертание роли | меняет только начертание |
color |
default | secondary | tertiary | accent | success | warning | error | info | inverse |
default |
роль цвета текста |
align |
start | center | end |
наследуется | выравнивание |
truncate |
boolean | false |
одна строка с многоточием |
italic |
boolean | false |
курсив для всего фрагмента |
Слоты
| Слот | Содержимое |
|---|---|
| по умолчанию | текст, обязателен; можно строчную разметку вроде <strong> или вложенного tk-text as="span" |
События
Нет. Text не интерактивен.
CSS
::part(text): выведенный элемент.
Токены
Каждый variant берёт свою роль из color берёт
токен text/* с тем же именем (color="error" → text/error). Значения по темам:
Доступность
Встроено:
asвыводит настоящий элемент, поэтому у заголовка верные роль и уровень.- ARIA не добавляется; смысл несёт нативный элемент.
- Доступное имя — весь текст, даже если
truncateего обрезал. - В
colorтолько читаемые роли текста.
На вашей стороне:
- Задавайте
asпо структуре страницы: одинh1, без пропуска уровней. - Не изображайте заголовок крупным
variantи не берите элемент заголовка ради жирного текста. - Для кликабельного текста нужна ссылка или кнопка.
- С
truncateдайте зрячим способ увидеть полный текст, если он важен.