Dynamic content components

General

The Libraries design system does not support dynamic content components. Hiding content with non-semantic HTML that requires inconsistently-supported ARIA is contradictory to the design system’s principles.

This decision will be continually revisited as more content is introduced to the Libraries’ web assets and as the web evolves and matures.

Tabs

The Libraries design system does not support tabs.

Links do not fail. Tabs do.

Tabs also create an undesirable responsive layout. When the content within the tabs is longer than the space, often the tabs wrap onto multiple lines or labels are truncated. This becomes more pronounced on small screens, where the tabs may fill the visible space and a person may not notice the content updating below the tab interface.

Similar to the previous point, tabs create awkward limitations to tabs and tab labels.

Accordions

The Libraries design system does not support accordions.

The <details> element may be considered once browsers more fully support it. The <details> element generates a simple no-javascript widget to show and hide element contents. Global support for <details> is 97% as of December 2021, so consider use with caution.

Though <details> is a native element, it still hides content that cannot easily be searched for on the page. For this reason, support continues to be minimal and not offered via the design system.

Carousels

Carousels are sometimes used to present a lot of information in one place. However, for many years web industry experts have found them to be ineffective and challenging for people to use.

In Auto-forwarding carousels and accordions annoy users and reduce visibility, the Nielsen Normal Group's studies found carousel content is ignored. Auto moving content also causes challenges for people with attention disabilities such as ADHD. Moving content may make a page unusable. Carousels encourage the use of images, which also create a degraded experience for people who cannot visually access the graphics. Other usability oriented issues identified by Nielsen Norman regarding moving carousels:

Jared Smith, author of the Do not use carousels, said this in an interview regarding the impacts on accessibility:

Beyond usability frustrations caused by carousels for all users, there are several distinct issues for users with disabilities. For auto-playing carousels, having content automatically disappear can cause loss of focus for screen reader and keyboard users that are reading or have keyboard focus on that content when it animates away. This can force the user back to the top of the page.

There also is no easy way to semantically or programmatically associate the controls for a carousel—often just numbers or dots—with the carousel content. This is especially difficult for users that cannot see the interface. The cognitive load and distraction caused by carousels can be especially difficult for some users with cognitive and learning disabilities.

Carousels pose more usability and accessibility concerns than are listed here.

The Libraries design system does not support carousels.

Tooltips

The Libraries design system does not support tooltips.

Tooltips hide potentially critical information that people may not be able to access. They may also provide on demand clarification for acronyms located farther down the page, so this is a pattern that may be available once an accessible javascript free solution is found.