Saltar al contenido
Alea0.1
Pro
  1. Alea
  2. Componentes
  3. Tipografía
  4. Heading y Text

Tipografía

Heading y Text

Títulos en Crimson Pro o Inter, texto con tonos, la etiqueta eyebrow, código en línea y teclas.

import { Heading, Text, Eyebrow, Code, Kbd } from '@alea/ui';

Ejemplos

Títulos

Crimson Pro Light para títulos (serif), Inter para títulos de interfaz (sans). level define el elemento, size el aspecto.

Design that plays

Section title

Card title

Interface heading

With the gradient

Texto

Tamaños, tonos y pesos de los tokens.

Large lead text for introductions.

Body text at 16 px, the default.

Muted text for secondary details.

Faint text for the least important things.

Saved to the file

Couldn't connect

A long line that gets cut with an ellipsis when it runs out of room.

Eyebrow, código y teclas

La pequeña etiqueta sobre un título, código en línea y teclas del teclado.

Figma plugin

Token Converter

Install with npm i @alea/ui, then press ⌘ K to search.

Configuraciones

Cada valor de cada propiedad, lado a lado. Los números coinciden con la leyenda.

xs
sm
md
lg
base
xl
default
accent
success
warning
danger
muted
faint
truncate: false
truncate: true
regular
medium
semibold
  1. Sizesize
  2. Tonetone
  3. Truncatetruncate
  4. Weightweight

Tokens

Los tokens de diseño que usa este componente, con su valor en el tema actual. Cambia cualquiera para darle otro estilo.

Color

  • --alea-accent-strong…
  • --alea-status-danger…
  • --alea-status-success…
  • --alea-status-warning…
  • --alea-text…
  • --alea-text-faint…
  • --alea-text-muted…

Type

  • --alea-font-leading-normal…
  • --alea-font-leading-relaxed…
  • --alea-font-size-base…
  • --alea-font-size-lg…
  • --alea-font-size-md…
  • --alea-font-size-sm…
  • --alea-font-size-xl…
  • --alea-font-size-xs…
  • --alea-font-weight-medium…
  • --alea-font-weight-regular…
  • --alea-font-weight-semibold…

Component

  • --alea-clamp…

Props

Heading props

Un título con la tipografía de Alea: Crimson Pro light para títulos, Inter para la interfaz.

PropTipoPor defectoDescripción
family"serif" | "sans"'serif'serif (Crimson Pro, light) para títulos, sans (Inter, semibold) para títulos de interfaz.
gradientboolean-Rellena el texto con el degradado de acento.
level2 | 3 | 4 | 5 | 6 | 12El nivel en el esquema (h1 a h6). Elígelo por la estructura de la página, no por el tamaño.
size"md" | "lg" | "xl" | "display" | "2xl" | "4xl" | "3xl"-Tamaño visual; por defecto según el nivel. display es el tamaño de hero.

Text props

Texto de cuerpo con los tamaños y tonos de los tokens; recortado a una línea o a varias.

PropTipoPor defectoDescripción
asElementType'p'El elemento a usar. Por defecto p.
lineClampnumber-Recorta a esta cantidad de líneas con puntos suspensivos.
size"sm" | "md" | "lg" | "base" | "xl" | "xs"'base'xs 12, sm 13, md 14, base 16 (por defecto), lg 18, xl 20 px.
tone"danger" | "accent" | "success" | "warning" | "default" | "muted" | "faint"'default'default, muted, faint, accent, success, warning o danger.
truncateboolean-Recorta a una línea con puntos suspensivos.
weight"regular" | "medium" | "semibold"-regular, medium o semibold.

Eyebrow props

La pequeña etiqueta en mayúsculas sobre el título de una sección.

PropTipoPor defectoDescripción
aria-labelstring-Define un texto que etiqueta al elemento actual. @see aria-labelledby. (heredada)
autoFocusboolean- (heredada)
classNamestring- (heredada)
defaultValuestring | number | readonly string[]- (heredada)
idstring- (heredada)
inputMode"text" | "none" | "search" | "tel" | "url" | "email" | "numeric" | "decimal"-Sugiere el tipo de datos que se pueden ingresar al editar el elemento o su contenido @see {@link https://html.spec.whatwg.org/multipage/interaction.html#input-modalities:-the-inputmode-attribute} (heredada)
onChangeChangeEventHandler<HTMLElement, Element>- (heredada)
onSubmitSubmitEventHandler<HTMLElement>- (heredada)
roleAriaRole- (heredada)
styleCSSProperties- (heredada)

Code props

Código en línea.

PropTipoPor defectoDescripción
aria-labelstring-Define un texto que etiqueta al elemento actual. @see aria-labelledby. (heredada)
autoFocusboolean- (heredada)
classNamestring- (heredada)
defaultValuestring | number | readonly string[]- (heredada)
idstring- (heredada)
inputMode"text" | "none" | "search" | "tel" | "url" | "email" | "numeric" | "decimal"-Sugiere el tipo de datos que se pueden ingresar al editar el elemento o su contenido @see {@link https://html.spec.whatwg.org/multipage/interaction.html#input-modalities:-the-inputmode-attribute} (heredada)
onChangeChangeEventHandler<HTMLElement, Element>- (heredada)
onSubmitSubmitEventHandler<HTMLElement>- (heredada)
roleAriaRole- (heredada)
styleCSSProperties- (heredada)

Kbd props

Una tecla o atajo, como ⌘K.

PropTipoPor defectoDescripción
aria-labelstring-Define un texto que etiqueta al elemento actual. @see aria-labelledby. (heredada)
autoFocusboolean- (heredada)
classNamestring- (heredada)
defaultValuestring | number | readonly string[]- (heredada)
idstring- (heredada)
inputMode"text" | "none" | "search" | "tel" | "url" | "email" | "numeric" | "decimal"-Sugiere el tipo de datos que se pueden ingresar al editar el elemento o su contenido @see {@link https://html.spec.whatwg.org/multipage/interaction.html#input-modalities:-the-inputmode-attribute} (heredada)
onChangeChangeEventHandler<HTMLElement, Element>- (heredada)
onSubmitSubmitEventHandler<HTMLElement>- (heredada)
roleAriaRole- (heredada)
styleCSSProperties- (heredada)

Especificaciones

Generado desde el código: las variantes de los tipos, los estados y tokens del CSS, y los patrones de motion que aplican. Las grillas muestran el componente real en ambos temas; los números se miden en la página.

Heading sizes (serif)

Oscuro

Heading dark
size="display"

Alea

size="4xl"

Alea

size="3xl"

Alea

size="2xl"

Alea

size="xl"

Alea

size="lg"

Alea

size="md"

Alea

Claro

Heading light
size="display"

Alea

size="4xl"

Alea

size="3xl"

Alea

size="2xl"

Alea

size="xl"

Alea

size="lg"

Alea

size="md"

Alea

Medido: alto · padding horizontal · radio de esquina · tamaño de texto, en px, de la grilla oscura.

Text sizes

Oscuro

Text dark
size="xl"

Design systems

size="lg"

Design systems

size="base"

Design systems

size="md"

Design systems

size="sm"

Design systems

size="xs"

Design systems

Claro

Text light
size="xl"

Design systems

size="lg"

Design systems

size="base"

Design systems

size="md"

Design systems

size="sm"

Design systems

size="xs"

Design systems

Medido: alto · padding horizontal · radio de esquina · tamaño de texto, en px, de la grilla oscura.

Heading

Variantes
familyserifsans
sizemdlgxldisplay2xl4xl3xl
Oscuro y claro
Cada color viene de tokens del tema, así que sigue a data-theme (y a presets como Graphite) en la página o en cualquier contenedor. El contraste se revisa en ambos temas.
Clases para estilos
.alea-heading.alea-gradient-text
Atributos data
data-family=serifdata-family=sansdata-size=displaydata-size=4xldata-size=3xldata-size=2xldata-size=xldata-size=lgdata-size=md

Text

Variantes
sizesmmdlgbasexlxs
tonedangeraccentsuccesswarningdefaultmutedfaint
weightregularmediumsemibold
Oscuro y claro
Cada color viene de tokens del tema, así que sigue a data-theme (y a presets como Graphite) en la página o en cualquier contenedor. El contraste se revisa en ambos temas.
Clases para estilos
.alea-text
Atributos data
data-size=xsdata-size=smdata-size=mddata-size=basedata-size=lgdata-size=xldata-tone=muteddata-tone=faintdata-tone=accentdata-tone=successdata-tone=warningdata-tone=dangerdata-weight=regulardata-weight=mediumdata-weight=semibolddata-truncatedata-clamp

Eyebrow

Oscuro y claro
Cada color viene de tokens del tema, así que sigue a data-theme (y a presets como Graphite) en la página o en cualquier contenedor. El contraste se revisa en ambos temas.
Clases para estilos
.alea-eyebrow

Code

Oscuro y claro
Cada color viene de tokens del tema, así que sigue a data-theme (y a presets como Graphite) en la página o en cualquier contenedor. El contraste se revisa en ambos temas.
Clases para estilos
.alea-code

Kbd

Oscuro y claro
Cada color viene de tokens del tema, así que sigue a data-theme (y a presets como Graphite) en la página o en cualquier contenedor. El contraste se revisa en ambos temas.
Clases para estilos
.alea-kbd

Accesibilidad

  • El nivel del título lo da la estructura y el tamaño el diseño: un h2 pequeño está bien.
  • Los tonos de texto muted y faint pasan WCAG AA sobre las superficies por defecto en sus tamaños previstos; faint es solo para texto secundario.

Qué hacer y qué evitar

Hacer

  • Un h1 por página.
  • Usa el eyebrow encima de un título, no como título.

Evitar

  • No te saltes niveles de título para conseguir un tamaño: usa size.
  • No uses texto faint para nada que la gente deba leer.

En Figma

Estilos de texto: Display, 4XL a MD para títulos serif, tamaños Body y UI, Eyebrow y Code.

Probado con axe, teclado y roles de lector de pantalla