Saltar al contenido
EspañolEnglish
Todos los componentes (204)

Guía de tallas

Comercio · SizeGuide · .amset-sizes

Qué es y cuándo usarlo

La tabla de tallas de una prenda o de una joya, con el cambio a pulgadas y la talla que toca según la medida que se escriba.

Cuándo usarlo

  • En la ficha de producto, a la vista o dentro del Dialog o el Drawer que abre «Guía de tallas».
  • keyMeasure decide por qué medida se recomienda; por defecto, la primera columna.
  • Si la medida cae entre dos tallas recomienda la mayor y lo dice («Estás entre la S y la M: te recomendamos la M»); si se sale de la guía, lo dice también, sin inventarse una talla.
  • withInches={false} cuando las pulgadas no pintan nada.

Cuándo no

  • Elegir la talla para comprar: VariantPicker, que además sabe qué está agotado.
  • Una tabla de datos que se ordena o se filtra: Table.

Teclado: Tab pasa por el campo de la medida, el cambio de unidades (las flechas eligen entre cm y pulgadas) y la tabla, que se enfoca para poder desplazarla cuando no cabe. La recomendación sale al salir del campo o al pulsar Intro, con la medida tal como se ha escrito: «90,2» no se redondea a 90 (el campo no tiene paso; las flechas suben y bajan de uno en uno).

Accesibilidad: es una tabla de verdad, con caption (el label, obligatorio), cabeceras de columna (las medidas) y de fila (las tallas): se oye «M, Pecho, 92–96 cm». La recomendación va en un role="status" y la fila de la talla recomendada lleva escrito «Tu talla», no solo el color. Al pasar a pulgadas, lo escrito se convierte en vez de perderse.

Contexto: va dentro de LocaleProvider (o de AmsetProvider), que pone la coma de los decimales. Las medidas se dan siempre en centímetros. Las tallas salen en la tabla en el orden en que se den, pero para recomendar se comparan por sus medidas, así que el orden da igual: cuando la medida no cae dentro de ninguna, se recomienda la primera que empieza por encima.

Aspecto fino: variables CSS --amset-sizes-*: -font, -gap, -radius, -tip-padding. El tamaño (size) mueve el hueco, el relleno de la recomendación y el cuerpo de la tabla.

Cómo se ve

Escribe tu medida de pecho y te decimos la talla.

Guia de tallas
TallaPechoCintura
S86–92 cm70–76 cm
M92–100 cm76–84 cm

<SizeGuide
  label="Guia de tallas"
  measures={[{ key: 'pecho', name: 'Pecho' }]}
  sizes={[{ key: 's', name: 'S', measures: { pecho: { min: 86, max: 92 } } }]}
/>

Props

Se importa con import { SizeGuide } from '@amset/ui'. Las obligatorias van marcadas.

PropTipoPara qué sirve
labelobligatoriastringDe que es la guia. Obligatoria: es el titulo de la tabla.
measuresobligatoriareadonly GuideMeasure[]—
sizesobligatoriareadonly GuideSize[]Las tallas, en el orden en que salen en la tabla. Para recomendar no hace falta que vengan de menor a mayor: se comparan por sus medidas.
classNamestringSe une a las clases de la biblioteca, no las sustituye.
keyMeasurestringQue medida se pregunta para recomendar. Por defecto, la primera.
size"sm" | "md" | "lg"—
withInchesbooleanDeja cambiar a pulgadas. Para anillos o tallas en mm, mejor sin.

Acepta además los atributos del elemento que pinta: className, style, data-*, aria-* y sus eventos.

Mandos

Estas variables CSS son la forma de adaptarlo. Se declaran sobre el selector del componente, no en :root: la hoja las redeclara en la propia regla y una declaración en el mismo elemento gana siempre.

VariablePor defecto
--amset-sizes-gapvar(--amset-space-3)
--amset-sizes-radiusvar(--amset-radius)
--amset-sizes-tip-paddingvar(--amset-space-2) var(--amset-space-3)
--amset-sizes-fontvar(--amset-text-sm)

Cómo se cambia

.amset-sizes {
  --amset-sizes-gap: ...;
  --amset-sizes-radius: ...;
}

En el banco de pruebas

Cada estado y cada variante, para tocarlos de uno en uno, en su ficha de ui.amset.tech: