Status
Status is used to inform users by providing feedback on system states. Status can display broad operational states as well as granular states like user status.
# Anatomy
# Behavior
Status is not an interactive element. It is only intended to inform. If a Status indicates that a user should take action, be sure to provide the appropriate controls.
# Variants
There are four variants of Status available: Neutral, Success, Caution, and Danger.
# Neutral
Neutral Statuses are gray and should be used to indicate states like "Paused", "Not started", or "Queued".
This is the default variant.
- Propulsion systems
- Engines offline
# Success
Success Statuses are green and should be used to indicate states like "Complete", "Active", or "Service operational".
- Propulsion systems
- Online
# Caution
Caution Statuses are yellow and should be used to indicate states like "Attention suggested" or "Service degradation".
- Propulsion systems
- Check engine
# Danger
Danger Statuses are red and should be used to indicate states like "Error", "Failure", or "Service disruption".
- Propulsion systems
- Warp core disruption
# Usage
Use Status to communicate the state of a discrete item, such as a server or individual process. Both labeled and unlabeled variants are acceptable, but should follow the associated guidelines.
- Engine performance
- Nominal
# Within Table
Table supports Status as a content type. Status requires a distinct column and should not be mixed with other content types.
In this case the column heading acts as the Status label.
# Content guidelines
Statuses content should provide a quick overview. Limit Status descriptor and label text to three words or less. Use sentence casing for both.
- Warp drive status
- Engaged
# Statuses without labels
Where necessary, labels may be hidden. If a label is not present, ensure the Status copy communicates appropriate context. Even if the label is hidden, it must be populated to ensure context for users of assistive technology.
- Warp drive status
- Warp drive engaged
# Variants
# Neutral
- Status label
- Neutral descriptor
<dl class="ods-status">
<dt class="ods-status--label">
Status label
</dt>
<dd class="ods-status--value">
Neutral descriptor
</dd>
</dl>
# Success
- Status label
- Success descriptor
<dl class="ods-status is-ods-status-success">
<dt class="ods-status--label">
Status label
</dt>
<dd class="ods-status--value">
Success descriptor
</dd>
</dl>
# Caution
- Status label
- Caution descriptor
<dl class="ods-status is-ods-status-caution">
<dt class="ods-status--label">
Status label
</dt>
<dd class="ods-status--value">
Caution descriptor
</dd>
</dl>
# Danger
- Status label
- Danger descriptor
<dl class="ods-status is-ods-status-danger">
<dt class="ods-status--label">
Status label
</dt>
<dd class="ods-status--value">
Danger descriptor
</dd>
</dl>
# Hiding labels
Labels may be hidden by applying the .is-ods-status-label-hidden class.
Even if the label is hidden, it must be populated to ensure appropriate context for users of assistive technology.
- Status label
- Status descriptor
<dl class="ods-status is-ods-status-success is-ods-status-label-hidden">
<dt class="ods-status--label">
Status label
</dt>
<dd class="ods-status--value">
Status descriptor
</dd>
</dl>
# Async Status changes
If the current state of Status may change asynchronously while a user is visiting the page, utilize the role="status" attribute to ensure that assistive technologies correctly indicate this change.
Note: This attribute must be present before the change occurs.
- Status label
- Live Status descriptor
<dl class="ods-status is-ods-status-caution" role="status">
<dt class="ods-status--label">
Status label
</dt>
<dd class="ods-status--value">
Live Status descriptor
</dd>
</dl>