New to Telerik UI for ASP.NET CoreStart a free 30-day trial

Timeline Accessibility

Out of the box, the Telerik UI for ASP.NET Core Timeline provides extensive accessibility support and enables users with disabilities to acquire complete control over its features.

The Timeline is compliant with the Web Content Accessibility Guidelines (WCAG) 2.2 AA standards and Section 508 requirements, follows the Web Accessibility Initiative - Accessible Rich Internet Applications (WAI-ARIA) best practices for implementing the keyboard navigation for its component role, provides options for managing its focus and is tested against the most popular screen readers.

WAI-ARIA

This section lists the selectors, attributes, and behavior patterns supported by the component and its composite elements, if any.

The Timeline component features two very different modes of rendering: vertical and horizontal. Those two modes require two very different approaches in terms of WAI-ARIA implementation:

  • Horizontal Timeline: should be implement as a role: tablist component.
  • Vertical Timeline should be implemented as a collection of Buttons. Each event on the Timeline is a Button.

Horizontal Timeline

SelectorAttributeUsage
.k-timeline.k-timeline-horizontal .k-timeline-track-wrap .k-timeline-scrollable-wraprole=tablistIndicates the tablist role for the ul element of the Timeline.
.k-timeline.k-timeline-horizontal .k-timeline-track-item:not(.k-timeline-flag-wrap)role=tabThe tab li element.
.k-timeline.k-timeline-horizontal .k-timeline-track-item[aria-selected=true]aria-describedbyThe current selected tab element must be described by its tabpanel.
.k-timeline.k-timeline-horizontal .k-timeline-track-item:not(.k-timeline-flag-wrap).k-focusaria-selected=trueAnnounces the selected state of the tab.
.k-timeline.k-timeline-horizontal .k-timeline-flag-wraprole=noneThe flag wrap elements must have its semantics removed.
aria-hidden=trueThe flag wrap should not be present in the accessibility tree.
.k-timeline.k-timeline-horizontal .k-card:not(:empty)role=tabpanelThe content div of the tab.
aria-labelRefers to the tab element that controls the panel.
.k-timeline.k-timeline-horizontal .k-timeline-event[style='transform: translate3d(0px, 0px, 0px);'] .k-cardtabindex=0The current tab panel elements must be focusable, so that its contents would be announced.
.k-timeline-arrowaria-hidden=trueIntroduce aria-hidden attribute for the scrollable buttons. The buttons are not included in the tabsequence.

Vertical Timeline

SelectorAttributeUsage
.k-timeline.k-timeline-vertical .k-cardrole=buttonThe items in the vertical Timeline are represented as buttons.
aria-describedby=.k-timeline-date idThe items in the vertical Timeline are described by their date elements.
aria-live=politeThe items in the vertical Timeline must be marked as live regions.
tabindex=0The items in the vertical Timeline must be focusable.
.k-timeline.k-timeline-vertical .k-collapsed .k-cardaria-expanded=falseWhen collapsed, the items in the vertical Timeline must have their aria-expanded attribute set to false.
.k-timeline.k-timeline-vertical .k-timeline-card:not(.k-collapsed) .k-cardaria-expanded=trueWhen expanded, the items in the vertical Timeline must have their aria-expanded attribute set to true.

Resources

WAI-ARIA specification for tablist

WAI-ARIA practices: TabList example

Section 508

The Timeline is fully compliant with the Section 508 requirements.

Testing

The Timeline has been extensively tested automatically with axe-core and manually with the most popular screen readers.

To report any accessibility issues, contact the team through the Telerik Support System.

Screen Readers

The Timeline has been tested with the following screen readers and browsers combinations:

EnvironmentTool
FirefoxNVDA
ChromeJAWS
Microsoft EdgeJAWS

Test Example

To test the Timeline component, refer to the Timeline Accessibility Demo.

Keyboard Navigation

For details on how the Timeline keyboard navigation works, refer to the Timeline Keyboard Navigation article.

See Also