Segmented — OutfitKit

GitHub

Segmented

Control de selección horizontal — iOS UISegmentedControl / Material BottomNavigation segmented. Touch-friendly por defecto (mín. 40 px alto). Útil en mobile, tablet y desktop como filtro inline o tabs compactas.

Básico — 4 opciones, una activa

Full width — estira al contenedor

Variante .sm — inline en toolbar

Periodo:

Reactivo con Datastar

Vista actual:

API

PropTipoDefaultDescripción
optionslist[str] | list[dict][]Strings o dicts {"value": ..., "label": ...}. Con strings, value == label.
activestrNoneValor de la opción activa (comparado contra value).
fullboolfalseEstira a 100% del contenedor.
size"md" | "sm""md"Tamaño. "sm" reduce padding y altura mín.
aria_labelstr""Etiqueta accesible para el role="tablist".

Modificadores CSS

  • .segmented.full · estira al contenedor
  • .segmented.sm · variante compacta
  • .segmented-option.is-active · estado activo. También funciona con aria-selected="true" o data-active="true".