User Progress Trackers

Displays the user's current location within a linear task flow, such as a wizard.

Coded Components

Helper classes: Looking for a complete list of helper classes for these components?View helper classes

Redlines: We don't include redline comps because it's always more accurate to use developer tools to inspect the coded components, or a plugin such as the Prism Redline Tool.

Standard User Progress Tracker

<nav class="dds__progress" aria-label="Progress Tracker"> <ol> <li> <a href="https://www.dell.com" class="dds__d-flex dds__flex-column"> <div class="dds__progress-bar dds__bar-complete" aria-hidden="true"> <svg class="dds__check" aria-hidden="true" focusable="false"><use xlink:href="#dds__check"></use></svg> </div> <div class="dds__btn-link dds__font-weight-bold">Step 1</div> </a> </li> <li> <a class="dds__d-flex dds__flex-column"> <div class="dds__progress-bar dds__bar-disabled" aria-hidden="true"> <svg class="dds__check" aria-hidden="true" focusable="false"><use xlink:href="#dds__check"></use></svg> </div> <div class="dds__progress-bar-text dds__font-weight-bold">Step 2</div> </a> </li> <li> <a href="https://www.dell.com" class="dds__d-flex dds__flex-column"> <div class="dds__progress-bar dds__bar-complete" aria-hidden="true"> <svg class="dds__check" aria-hidden="true" focusable="false"><use xlink:href="#dds__check"></use></svg> </div> <div class="dds__btn-link dds__font-weight-bold">Step 3</div> </a> </li> <li aria-current="step"> <a class="dds__d-flex dds__flex-column dds__disabled"> <div class="dds__progress-bar dds__bar-in-progress" aria-hidden="true"> <svg class="dds__check" aria-hidden="true" focusable="false"><use xlink:href="#dds__check"></use></svg> </div> <div class="dds__btn-link dds__font-weight-bold">Step 4</div> </a> </li> <li> <a class="dds__d-flex dds__flex-column dds__disabled"> <div class="dds__progress-bar dds__bar-not-started" aria-hidden="true"> <svg class="dds__check" aria-hidden="true" focusable="false"><use xlink:href="#dds__check"></use></svg> </div> <div class="dds__btn-link">Step 5</div> </a> </li> <li> <a class="dds__d-flex dds__flex-column dds__disabled"> <div class="dds__progress-bar dds__bar-not-started" aria-hidden="true"> <svg class="dds__check" aria-hidden="true" focusable="false"><use xlink:href="#dds__check"></use></svg> </div> <div class="dds__btn-link">Step 6</div> </a> </li> </ol>
</nav>

Dropdown User Progress Tracker

Thin User Progress Tracker

<div> <nav class="dds__progress-wrapper-thin dds__col dds__d-flex dds__align-items-start dds__justify-content-center dds__pr-0 dds__pl-0" aria-label="Progress Status"> <ol class="dds__d-flex dds__d-row dds__w-100 dds__list-unstyled"> <li class="dds__completed dds__col-2 dds__text-center"> <div class="dds__d-flex dds__flex-row dds__w-100 dds__justify-content-center dds__align-items-center"> <div class="dds__col-6 dds__progress-bar-thin dds__position-relative dds__pr-0 dds__pl-0"></div> <div class="dds__progress-circle"></div> <div class="dds__col-6 dds__progress-bar-thin dds__position-relative dds__pr-0 dds__pl-0"></div> </div> <p class="dds__progress-label-thin"> <a href="#"> <svg class="dds__check" aria-hidden="true" focusable="false"><use xlink:href="#dds__check"></use></svg> <span class="dds__sr-only">Completed: </span> <span class="dds__progress-thin-text">Step Name 1</span> </a> </p> </li> <li class="dds__completed dds__col-2 dds__text-center"> <div class=" dds__d-flex dds__flex-row dds__w-100 dds__justify-content-center dds__align-items-center"> <div class="dds__col-6 dds__progress-bar-thin dds__position-relative dds__pr-0 dds__pl-0"></div> <div class="dds__progress-circle"></div> <div class="dds__col-6 dds__progress-bar-thin dds__position-relative dds__pr-0 dds__pl-0"></div> </div> <p class="dds__progress-label-thin"> <span> <svg class="dds__check" aria-hidden="true" focusable="false"><use xlink:href="#dds__check"></use></svg> <span class="dds__sr-only">Completed: </span> <span class="dds__progress-thin-text">Step Name 2</span> </span> </p> </li> <li class="dds__completed dds__col-2 dds__text-center"> <div class="dds__d-flex dds__flex-row dds__w-100 dds__justify-content-center dds__align-items-center"> <div class="dds__col-6 dds__progress-bar-thin dds__position-relative dds__pr-0 dds__pl-0"></div> <div class="dds__progress-circle"></div> <div class="dds__col-6 dds__progress-bar-thin dds__position-relative dds__pr-0 dds__pl-0"></div> </div> <p class="dds__progress-label-thin"> <a href="#"> <svg class="dds__check" aria-hidden="true" focusable="false"><use xlink:href="#dds__check"></use></svg> <span class="dds__sr-only">Completed: </span> <span class="dds__progress-thin-text">Step Name 3</span> </a> </p> </li> <li class="dds__current dds__col-2 dds__text-center" aria-current="step"> <div class="dds__d-flex dds__flex-row dds__w-100 dds__justify-content-center dds__align-items-center"> <div class="dds__col-6 dds__progress-bar-thin dds__position-relative dds__pr-0 dds__pl-0"></div> <div class="dds__progress-circle dds__rounded-circle"></div> <div class="dds__col-6 dds__progress-bar-thin dds__position-relative dds__pr-0 dds__pl-0"></div> </div> <p class="dds__progress-label-thin"> <span> <svg class="dds__check" aria-hidden="true" focusable="false"><use xlink:href="#dds__check"></use></svg> <span class="dds__progress-thin-text">Step Name 4</span> </span> </p> </li> <li class="dds__col-2 dds__text-center"> <div class="dds__d-flex dds__flex-row dds__w-100 dds__justify-content-center dds__align-items-center"> <div class="dds__col-6 dds__progress-bar-thin dds__position-relative dds__pr-0 dds__pl-0"></div> <div class="dds__progress-circle"></div> <div class="dds__col-6 dds__progress-bar-thin dds__position-relative dds__pr-0 dds__pl-0"></div> </div> <p class="dds__progress-label-thin"> <span> <svg class="dds__check" aria-hidden="true" focusable="false"><use xlink:href="#dds__check"></use></svg> <span class="dds__progress-thin-text">Step Name 5</span> </span> </p> </li> <li class="dds__col-2 dds__text-center"> <div class="dds__d-flex dds__flex-row dds__w-100 dds__justify-content-center dds__align-items-center"> <div class="dds__col-6 dds__progress-bar-thin dds__position-relative dds__pr-0 dds__pl-0"></div> <div class="dds__progress-circle"></div> <div class="dds__col-6 dds__progress-bar-thin dds__position-relative dds__pr-0 dds__pl-0"></div> </div> <p class="dds__progress-label-thin"> <span> <svg class="dds__check" aria-hidden="true" focusable="false"><use xlink:href="#dds__check"></use></svg> <span class="dds__progress-thin-text">Step Name 6</span> </span> </p> </li> </ol>
</nav> <div class="dds__mb-0 dds__btn-dropdown dds__dropdown-progress dds__progress-thin-dropdown" tabindex="-1"> <button class="dds__btn dds__btn-secondary dds__text-truncate" tabindex="0" data-toggle="dds__dropdown" data-target="#buttonDropdownThin" aria-expanded="false" aria-controls="buttonDropdownThin"> Step 4 of 6: Step Name 4 <svg class="dds__arrow-tri-solid-right" focusable="false" aria-hidden="true"> <use xlink:href="#dds__arrow-tri-solid-right"></use> </svg> </button> <ul id="buttonDropdownThin" class="dds__button-dropdown-container dds__collapse" role="menu"> <li class="dds__dropdown-list-item" role="none" tabindex="0"> <a class="dds__dropdown-item dds__text-truncate dds__completed" role="menuitem" href="https://www.dell.com/en-us" tabindex="-1" > <svg class="dds__check" aria-hidden="true" focusable="false"><use xlink:href="#dds__check"></use></svg> Step 1 of 6: Step Name 1 </a> </li> <li class="dds__dropdown-list-item" role="none" tabindex="-1"> <a class="dds__dropdown-item dds__text-truncate dds__completed dds__disabled" role="menuitem" href="#" tabindex="-1" aria-disabled="true"> <svg class="dds__check" aria-hidden="true" focusable="false"><use xlink:href="#dds__check"></use></svg> Step 2 of 6: Step Name 2 </a> </li> <li class="dds__dropdown-list-item" role="none" tabindex="0"> <a class="dds__dropdown-item dds__text-truncate dds__completed" role="menuitem" href="#" tabindex="-1" aria-disabled="true"> <svg class="dds__check" aria-hidden="true" focusable="false"><use xlink:href="#dds__check"></use></svg> Step 3 of 6: Step Name 3 </a> </li> <li class="dds__dropdown-list-item" role="none" tabindex="0"> <a class="dds__dropdown-item dds__text-truncate dds__current" role="menuitem" href="#" tabindex="-1" > <svg class="dds__check" aria-hidden="true" focusable="false"><use xlink:href="#dds__check"></use></svg> Step 4 of 6: Step Name 4 </a> </li> <li class="dds__dropdown-list-item" role="none" tabindex="0"> <a class="dds__dropdown-item dds__text-truncate dds__disabled" role="menuitem" href="#" tabindex="-1" > <svg class="dds__check" aria-hidden="true" focusable="false"><use xlink:href="#dds__check"></use></svg> Step 5 of 6: Step Name 5 </a> </li> <li class="dds__dropdown-list-item" role="none" tabindex="-1"> <a class="dds__dropdown-item dds__text-truncate dds__disabled" role="menuitem" href="#" tabindex="-1" > <svg class="dds__check" aria-hidden="true" focusable="false"><use xlink:href="#dds__check"></use></svg> Step 6 of 6: Step Name 6 </a> </li> </ul>
</div> </div>

No items found.

Usage

Progress trackers are positioned beneath the page title and above the rest of the content.

All progress trackers require a minimum of 2 steps.

Standard User Progress Trackers are represented with a linear bar and can have a maximum of 6 steps.

Dropdown User Progress Trackers are used when there are more than 6 steps.

Typically, users have the option to navigate backwards in their workflow by clicking on any previous tracker step that is not disabled.

Disabled steps are used when backward navigation is not possible to those steps.

Reverse the direction of a progress tracker for right-to-left languages.

If possible, the first step of a form should explain how many steps will follow. Each step should inform the user about the progress they are making.

Thin User Progress Tracker

As of this writing, this variation is optional and is approved for use in the consumer segment only.

The bar for a visited step is never clickable and is always blue, to help distinguish it from steps that have not been visited.

If a step has not been visited yet, then both its bar and label are disabled gray.

On smaller breakpoints, the dropdown progress tracker is used in tandem with the horizontal track (appears beneath it) because the latter is not clickable.

Do's and Don'ts

Common Button Labels and Usage

Title case, 2-3 words maximum.
Do not combine actions in a label (exception: "Customize & Buy").
If standard labels don't fit the button's purpose, align label with the task the user is attempting.

Please refer to the Dell Technologies branding website, https://brand.delltechnologies.com/faq/#voice, for further information regarding call-to-action labels and usage.

Button Label:
Corresponding Action:
Add to Cart
Search
Cancel
Save
Edit
Delete
Continue
Next/Previous
Submit
Select
Sign In/Sign Out
View Details
Ok/Cancel
Learn More
Close
Takes users to Cart page, with item added
Used for search buttons
Takes users back to entry point for a task
Used to save an item
Navigates users to change an item
Deletes an item on the page, usually with a verification step
Used as progression
Used as forward and backward navigation (Next is primary, Previous is secondary)
Used to submit a task or info
Used for choosing items in a task flow
Authentication standard, for consistency do not use Log In/Log Out or Signin/Signout
Used instead of “Select” in cases of product details or within learn content
For use in modal verification steps when more specific CTAs will not fit due to space
Used to link users to more learning content or contextual help
Used within modal windows

Accessibility

The W3C Web Accessibility Initiative (WAI) develops standards and support materials to help you understand and implement accessibility.

Please refer to these recommendations for progressbars from WAI-ARIA 1.1.

You may also refer to these tutorials for multi-page forms from Web Accessibility Tutorials.

Dropdown User Progress Tracker

See also the accessibility guidelines for buttons.