Skip to content

Element list: selection and link-colour parity assessment #2748

Description

@kfenner

Decision

This issue does not represent a required generic .list / .list-item capability and does not block the non-breaking list-group deprecation in #2742. The Element list is intentionally a layout primitive with explicit controls for selection, such as checkboxes or radio buttons, rather than a Bootstrap-compatible selected or disabled row API.

Selected and disabled state

Persistent selection and disabled behavior belong to the interaction that owns them, including its semantics and keyboard behavior. A cdkListbox, navigation list, or master-detail selector must provide its own visual state and appropriate ARIA (aria-selected, aria-current, or native disabled) instead of relying on a generic .list-item.active or .list-item.disabled selector.

The legacy .list-group styles remain available for existing consumers, including consumers that still rely on Bootstrap-style .active and .disabled affordances. Any migration of si-widget-catalog, si-list-widget-*, or custom-widget-catalog therefore needs a consumer-specific design and implementation task; it is not a reason to extend the generic Element list.

Anchor colour

.list-item-action uses color: inherit by design so an interactive row follows the surrounding content colour. Whether anchor action rows should instead preserve the default link colour is a separate visual-language decision, not a functional or accessibility gap. Create a focused design request if a concrete anchor-list use case needs a different default.

Result

The migration guidance in #2742 now documents the verified markup and variant mappings:

  • Apply .list-item.list-item-action to the same <button> or <a>.
  • Use .list.list-divider when a flush migration should preserve dividers.
  • Use a custom counter for numbered lists because .list-item removes list markers.

No generic selected/disabled selector or anchor-colour change is planned from this issue.

Context: #2742 (deprecation) · #2745 (list inside cards) · #2746 (internal migration)

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions