Examples
Documentation
Accessibility
Attribute | Applied to | Outcome |
---|---|---|
aria-expanded="true" | .pf-v5-c-expandable-section__toggle | Indicates that the expandable section content is visible. Required |
aria-expanded="false" | .pf-v5-c-expandable-section__toggle | Indicates the the expandable section content is hidden. Required |
hidden | .pf-v5-c-expandable-section__content | Indicates that the expandable section content element is hidden. Use with aria-expanded="false" Required |
aria-hidden="true" | .pf-v5-c-expandable-section__toggle-icon | Hides the icon from screen readers. Required |
aria-controls="[id of content element]" | .pf-v5-c-expandable-section.pf-m-detached .pf-v5-c-expandable-section__toggle | Identifies the element controlled by the toggle button. Required |
id | .pf-v5-c-expandable-section.pf-m-detached .pf-v5-c-expandable-section__content | Gives the content an id for use with aria-controls on .pf-v5-c-expandable-section__toggle . Required |
Usage
Class | Applied to | Outcome |
---|---|---|
.pf-v5-c-expandable-section | <div> | Initiates the expandable section component. Required |
.pf-v5-c-expandable-section__toggle | <button> | Initiates the expandable section toggle. Required |
.pf-v5-c-expandable-section__toggle-text | <span> | Initiates the expandable toggle text. Required |
.pf-v5-c-expandable-section__toggle-icon | <span> | Initiates the expandable toggle icon. Required |
.pf-v5-c-expandable-section__content | <div> | Initiates the expandable section content. Required |
.pf-m-expanded | .pf-v5-c-expandable-section | Modifies the component for the expanded state. |
.pf-m-display-lg | .pf-v5-c-expandable-section | Modifies the styling of the component to have large display styling. |
.pf-m-detached | .pf-v5-c-expandable-section | Indicates that the expandable section toggle and content are detached from one another, so you can move them around independently in the markup. |
.pf-m-indented | .pf-v5-c-expandable-section | Indicates that the expandable section content is indented and is aligned with the start of the title text to provide visual hierarchy. |
.pf-m-truncate | .pf-v5-c-expandable-section | Indicates that the expandable section content is truncated by default, and not truncated when expanded. |
.pf-m-active | .pf-v5-c-expandable-section__toggle | Forces display of the active state of the toggle. |
.pf-m-expand-top | .pf-v5-c-expandable-section__toggle-icon | Modifies the toggle icon to point up when expanded. |
--pf-v5-c-expandable-section--m-truncate__content--LineClamp | .pf-v5-c-expandable-section.pf-m-truncate | Modifies the number of lines to show before truncating. |
CSS variables
Expand or collapse column | Selector | Variable | Value | |
---|---|---|---|---|
.pf-v5-c-expandable-section | --pf-v5-c-expandable-section__toggle--PaddingTop | 0.375rem | ||
--pf-v5-c-expandable-section__toggle--PaddingTop --pf-v5-global--spacer--form-element $pf-v5-global--spacer--form-element pf-size-prem(6px) 0.375rem | ||||
.pf-v5-c-expandable-section | --pf-v5-c-expandable-section__toggle--PaddingRight | 1rem | ||
--pf-v5-c-expandable-section__toggle--PaddingRight --pf-v5-global--spacer--md $pf-v5-global--spacer--md pf-size-prem(16px) 1rem | ||||
.pf-v5-c-expandable-section | --pf-v5-c-expandable-section__toggle--PaddingBottom | 0.375rem | ||
--pf-v5-c-expandable-section__toggle--PaddingBottom --pf-v5-global--spacer--form-element $pf-v5-global--spacer--form-element pf-size-prem(6px) 0.375rem | ||||
.pf-v5-c-expandable-section | --pf-v5-c-expandable-section__toggle--PaddingLeft | 0 | ||
.pf-v5-c-expandable-section | --pf-v5-c-expandable-section__toggle--MarginTop | 0 | ||
.pf-v5-c-expandable-section | --pf-v5-c-expandable-section__toggle--Color | #06c | ||
--pf-v5-c-expandable-section__toggle--Color --pf-v5-global--link--Color $pf-v5-global--link--Color $pf-v5-global--primary-color--100 $pf-v5-color-blue-400 #06c | ||||
.pf-v5-c-expandable-section | --pf-v5-c-expandable-section__toggle--hover--Color | #004080 | ||
--pf-v5-c-expandable-section__toggle--hover--Color --pf-v5-global--link--Color--hover $pf-v5-global--link--Color--hover $pf-v5-global--primary-color--200 $pf-v5-color-blue-500 #004080 | ||||
.pf-v5-c-expandable-section | --pf-v5-c-expandable-section__toggle--active--Color | #004080 | ||
--pf-v5-c-expandable-section__toggle--active--Color --pf-v5-global--link--Color--hover $pf-v5-global--link--Color--hover $pf-v5-global--primary-color--200 $pf-v5-color-blue-500 #004080 | ||||
.pf-v5-c-expandable-section | --pf-v5-c-expandable-section__toggle--focus--Color | #004080 | ||
--pf-v5-c-expandable-section__toggle--focus--Color --pf-v5-global--link--Color--hover $pf-v5-global--link--Color--hover $pf-v5-global--primary-color--200 $pf-v5-color-blue-500 #004080 | ||||
.pf-v5-c-expandable-section | --pf-v5-c-expandable-section__toggle--m-expanded--Color | #004080 | ||
--pf-v5-c-expandable-section__toggle--m-expanded--Color --pf-v5-global--link--Color--hover $pf-v5-global--link--Color--hover $pf-v5-global--primary-color--200 $pf-v5-color-blue-500 #004080 | ||||
.pf-v5-c-expandable-section | --pf-v5-c-expandable-section__toggle--BackgroundColor | transparent | ||
.pf-v5-c-expandable-section | --pf-v5-c-expandable-section__toggle-icon--MinWidth | 1em | ||
.pf-v5-c-expandable-section | --pf-v5-c-expandable-section__toggle-icon--Color | #151515 | ||
--pf-v5-c-expandable-section__toggle-icon--Color --pf-v5-global--Color--100 $pf-v5-global--Color--100 $pf-v5-color-black-900 #151515 | ||||
.pf-v5-c-expandable-section | --pf-v5-c-expandable-section__toggle-icon--Transition | .2s ease-in 0s | ||
.pf-v5-c-expandable-section | --pf-v5-c-expandable-section__toggle-icon--Rotate | 0 | ||
.pf-v5-c-expandable-section | --pf-v5-c-expandable-section__toggle-icon--m-expand-top--Rotate | 0 | ||
.pf-v5-c-expandable-section | --pf-v5-c-expandable-section--m-expanded__toggle-icon--Rotate | 90deg | ||
.pf-v5-c-expandable-section | --pf-v5-c-expandable-section--m-expanded__toggle-icon--m-expand-top--Rotate | -90deg | ||
.pf-v5-c-expandable-section | --pf-v5-c-expandable-section__toggle-text--MarginLeft | calc(0.25rem + 0.5rem) | ||
--pf-v5-c-expandable-section__toggle-text--MarginLeft calc(--pf-v5-global--spacer--xs + --pf-v5-global--spacer--sm) calc($pf-v5-global--spacer--xs + $pf-v5-global--spacer--sm) calc(pf-size-prem(4px) + pf-size-prem(8px)) calc(0.25rem + 0.5rem) | ||||
.pf-v5-c-expandable-section | --pf-v5-c-expandable-section__content--MarginTop | 1rem | ||
--pf-v5-c-expandable-section__content--MarginTop --pf-v5-global--spacer--md $pf-v5-global--spacer--md pf-size-prem(16px) 1rem | ||||
.pf-v5-c-expandable-section | --pf-v5-c-expandable-section__content--MaxWidth | auto | ||
.pf-v5-c-expandable-section | --pf-v5-c-expandable-section--m-limit-width__content--MaxWidth | 46.875rem | ||
.pf-v5-c-expandable-section | --pf-v5-c-expandable-section--m-display-lg--BoxShadow | 0 0.25rem 0.5rem 0rem rgba(3, 3, 3, 0.12), 0 0 0.25rem 0 rgba(3, 3, 3, 0.06) | ||
--pf-v5-c-expandable-section--m-display-lg--BoxShadow --pf-v5-global--BoxShadow--md $pf-v5-global--BoxShadow--md 0 pf-size-prem(4px) pf-size-prem(8px) pf-size-prem(0) rgba($pf-v5-color-black-1000, .12), 0 0 pf-size-prem(4px) 0 rgba($pf-v5-color-black-1000, .06) 0 pf-size-prem(4px) pf-size-prem(8px) pf-size-prem(0) rgba(#030303, .12), 0 0 pf-size-prem(4px) 0 rgba(#030303, .06) 0 0.25rem 0.5rem 0rem rgba(3, 3, 3, 0.12), 0 0 0.25rem 0 rgba(3, 3, 3, 0.06) | ||||
.pf-v5-c-expandable-section | --pf-v5-c-expandable-section--m-display-lg__toggle--PaddingTop | 1rem | ||
--pf-v5-c-expandable-section--m-display-lg__toggle--PaddingTop --pf-v5-global--spacer--md $pf-v5-global--spacer--md pf-size-prem(16px) 1rem | ||||
.pf-v5-c-expandable-section | --pf-v5-c-expandable-section--m-display-lg__toggle--PaddingRight | 1rem | ||
--pf-v5-c-expandable-section--m-display-lg__toggle--PaddingRight --pf-v5-global--spacer--md $pf-v5-global--spacer--md pf-size-prem(16px) 1rem | ||||
.pf-v5-c-expandable-section | --pf-v5-c-expandable-section--m-display-lg__toggle--PaddingBottom | 1rem | ||
--pf-v5-c-expandable-section--m-display-lg__toggle--PaddingBottom --pf-v5-global--spacer--md $pf-v5-global--spacer--md pf-size-prem(16px) 1rem | ||||
.pf-v5-c-expandable-section | --pf-v5-c-expandable-section--m-display-lg__toggle--PaddingLeft | 1rem | ||
--pf-v5-c-expandable-section--m-display-lg__toggle--PaddingLeft --pf-v5-global--spacer--md $pf-v5-global--spacer--md pf-size-prem(16px) 1rem | ||||
.pf-v5-c-expandable-section | --pf-v5-c-expandable-section--m-display-lg__content--MarginTop | 0 | ||
.pf-v5-c-expandable-section | --pf-v5-c-expandable-section--m-display-lg__content--PaddingRight | 1.5rem | ||
--pf-v5-c-expandable-section--m-display-lg__content--PaddingRight --pf-v5-global--spacer--lg $pf-v5-global--spacer--lg pf-size-prem(24px) 1.5rem | ||||
.pf-v5-c-expandable-section | --pf-v5-c-expandable-section--m-display-lg__content--PaddingBottom | 1.5rem | ||
--pf-v5-c-expandable-section--m-display-lg__content--PaddingBottom --pf-v5-global--spacer--lg $pf-v5-global--spacer--lg pf-size-prem(24px) 1.5rem | ||||
.pf-v5-c-expandable-section | --pf-v5-c-expandable-section--m-display-lg__content--PaddingLeft | 1.5rem | ||
--pf-v5-c-expandable-section--m-display-lg__content--PaddingLeft --pf-v5-global--spacer--lg $pf-v5-global--spacer--lg pf-size-prem(24px) 1.5rem | ||||
.pf-v5-c-expandable-section | --pf-v5-c-expandable-section--m-display-lg--after--BackgroundColor | transparent | ||
.pf-v5-c-expandable-section | --pf-v5-c-expandable-section--m-display-lg--after--Width | 3px | ||
--pf-v5-c-expandable-section--m-display-lg--after--Width --pf-v5-global--BorderWidth--lg $pf-v5-global--BorderWidth--lg 3px | ||||
.pf-v5-c-expandable-section | --pf-v5-c-expandable-section--m-display-lg--m-expanded--after--BackgroundColor | #06c | ||
--pf-v5-c-expandable-section--m-display-lg--m-expanded--after--BackgroundColor --pf-v5-global--primary-color--100 $pf-v5-global--primary-color--100 $pf-v5-color-blue-400 #06c | ||||
.pf-v5-c-expandable-section | --pf-v5-c-expandable-section--m-indented__content--PaddingLeft | calc(calc(0.25rem + 0.5rem) + 1em) | ||
--pf-v5-c-expandable-section--m-indented__content--PaddingLeft calc(--pf-v5-c-expandable-section__toggle-text--MarginLeft + --pf-v5-c-expandable-section__toggle-icon--MinWidth) calc(calc(--pf-v5-global--spacer--xs + --pf-v5-global--spacer--sm) + 1em) calc(calc($pf-v5-global--spacer--xs + $pf-v5-global--spacer--sm) + 1em) calc(calc(pf-size-prem(4px) + pf-size-prem(8px)) + 1em) calc(calc(0.25rem + 0.5rem) + 1em) | ||||
.pf-v5-c-expandable-section | --pf-v5-c-expandable-section--m-truncate__content--LineClamp | 3 | ||
.pf-v5-c-expandable-section | --pf-v5-c-expandable-section--m-truncate__toggle--MarginTop | 0.25rem | ||
--pf-v5-c-expandable-section--m-truncate__toggle--MarginTop --pf-v5-global--spacer--xs $pf-v5-global--spacer--xs pf-size-prem(4px) 0.25rem | ||||
.pf-v5-c-expandable-section.pf-m-expanded | --pf-v5-c-expandable-section__toggle--Color | #004080 | ||
--pf-v5-c-expandable-section__toggle--Color --pf-v5-c-expandable-section__toggle--m-expanded--Color --pf-v5-global--link--Color--hover $pf-v5-global--link--Color--hover $pf-v5-global--primary-color--200 $pf-v5-color-blue-500 #004080 | ||||
.pf-v5-c-expandable-section.pf-m-expanded | --pf-v5-c-expandable-section__toggle-icon--Rotate | 90deg | ||
--pf-v5-c-expandable-section__toggle-icon--Rotate --pf-v5-c-expandable-section--m-expanded__toggle-icon--Rotate 90deg | ||||
.pf-v5-c-expandable-section.pf-m-expanded | --pf-v5-c-expandable-section__toggle-icon--m-expand-top--Rotate | -90deg | ||
--pf-v5-c-expandable-section__toggle-icon--m-expand-top--Rotate --pf-v5-c-expandable-section--m-expanded__toggle-icon--m-expand-top--Rotate -90deg | ||||
.pf-v5-c-expandable-section.pf-m-expanded | --pf-v5-c-expandable-section--m-display-lg--after--BackgroundColor | #06c | ||
--pf-v5-c-expandable-section--m-display-lg--after--BackgroundColor --pf-v5-c-expandable-section--m-display-lg--m-expanded--after--BackgroundColor --pf-v5-global--primary-color--100 $pf-v5-global--primary-color--100 $pf-v5-color-blue-400 #06c | ||||
.pf-v5-c-expandable-section.pf-m-detached | --pf-v5-c-expandable-section__content--MarginTop | 0 | ||
.pf-v5-c-expandable-section.pf-m-detached | --pf-v5-c-expandable-section--m-truncate__toggle--MarginTop | 0 | ||
.pf-v5-c-expandable-section.pf-m-limit-width | --pf-v5-c-expandable-section__content--MaxWidth | 46.875rem | ||
--pf-v5-c-expandable-section__content--MaxWidth --pf-v5-c-expandable-section--m-limit-width__content--MaxWidth 46.875rem | ||||
.pf-v5-c-expandable-section.pf-m-display-lg | --pf-v5-c-expandable-section__toggle--PaddingTop | 1rem | ||
--pf-v5-c-expandable-section__toggle--PaddingTop --pf-v5-c-expandable-section--m-display-lg__toggle--PaddingTop --pf-v5-global--spacer--md $pf-v5-global--spacer--md pf-size-prem(16px) 1rem | ||||
.pf-v5-c-expandable-section.pf-m-display-lg | --pf-v5-c-expandable-section__toggle--PaddingRight | 1rem | ||
--pf-v5-c-expandable-section__toggle--PaddingRight --pf-v5-c-expandable-section--m-display-lg__toggle--PaddingRight --pf-v5-global--spacer--md $pf-v5-global--spacer--md pf-size-prem(16px) 1rem | ||||
.pf-v5-c-expandable-section.pf-m-display-lg | --pf-v5-c-expandable-section__toggle--PaddingBottom | 1rem | ||
--pf-v5-c-expandable-section__toggle--PaddingBottom --pf-v5-c-expandable-section--m-display-lg__toggle--PaddingBottom --pf-v5-global--spacer--md $pf-v5-global--spacer--md pf-size-prem(16px) 1rem | ||||
.pf-v5-c-expandable-section.pf-m-display-lg | --pf-v5-c-expandable-section__toggle--PaddingLeft | 1rem | ||
--pf-v5-c-expandable-section__toggle--PaddingLeft --pf-v5-c-expandable-section--m-display-lg__toggle--PaddingLeft --pf-v5-global--spacer--md $pf-v5-global--spacer--md pf-size-prem(16px) 1rem | ||||
.pf-v5-c-expandable-section.pf-m-display-lg | --pf-v5-c-expandable-section__content--PaddingRight | 1.5rem | ||
--pf-v5-c-expandable-section__content--PaddingRight --pf-v5-c-expandable-section--m-display-lg__content--PaddingRight --pf-v5-global--spacer--lg $pf-v5-global--spacer--lg pf-size-prem(24px) 1.5rem | ||||
.pf-v5-c-expandable-section.pf-m-display-lg | --pf-v5-c-expandable-section__content--PaddingBottom | 1.5rem | ||
--pf-v5-c-expandable-section__content--PaddingBottom --pf-v5-c-expandable-section--m-display-lg__content--PaddingBottom --pf-v5-global--spacer--lg $pf-v5-global--spacer--lg pf-size-prem(24px) 1.5rem | ||||
.pf-v5-c-expandable-section.pf-m-display-lg | --pf-v5-c-expandable-section__content--PaddingLeft | 1.5rem | ||
--pf-v5-c-expandable-section__content--PaddingLeft --pf-v5-c-expandable-section--m-display-lg__content--PaddingLeft --pf-v5-global--spacer--lg $pf-v5-global--spacer--lg pf-size-prem(24px) 1.5rem | ||||
.pf-v5-c-expandable-section.pf-m-display-lg | --pf-v5-c-expandable-section__content--MarginTop | 0 | ||
--pf-v5-c-expandable-section__content--MarginTop --pf-v5-c-expandable-section--m-display-lg__content--MarginTop 0 | ||||
.pf-v5-c-expandable-section.pf-m-indented | --pf-v5-c-expandable-section__content--PaddingLeft | calc(calc(0.25rem + 0.5rem) + 1em) | ||
--pf-v5-c-expandable-section__content--PaddingLeft --pf-v5-c-expandable-section--m-indented__content--PaddingLeft calc(--pf-v5-c-expandable-section__toggle-text--MarginLeft + --pf-v5-c-expandable-section__toggle-icon--MinWidth) calc(calc(--pf-v5-global--spacer--xs + --pf-v5-global--spacer--sm) + 1em) calc(calc($pf-v5-global--spacer--xs + $pf-v5-global--spacer--sm) + 1em) calc(calc(pf-size-prem(4px) + pf-size-prem(8px)) + 1em) calc(calc(0.25rem + 0.5rem) + 1em) | ||||
.pf-v5-c-expandable-section.pf-m-truncate | --pf-v5-c-expandable-section__toggle--MarginTop | 0.25rem | ||
--pf-v5-c-expandable-section__toggle--MarginTop --pf-v5-c-expandable-section--m-truncate__toggle--MarginTop --pf-v5-global--spacer--xs $pf-v5-global--spacer--xs pf-size-prem(4px) 0.25rem | ||||
.pf-v5-c-expandable-section.pf-m-truncate | --pf-v5-c-expandable-section__toggle--PaddingTop | 0 | ||
.pf-v5-c-expandable-section.pf-m-truncate | --pf-v5-c-expandable-section__toggle--PaddingRight | 0 | ||
.pf-v5-c-expandable-section.pf-m-truncate | --pf-v5-c-expandable-section__toggle--PaddingBottom | 0 | ||
.pf-v5-c-expandable-section.pf-m-truncate | --pf-v5-c-expandable-section__toggle-text--MarginLeft | 0 | ||
.pf-v5-c-expandable-section__toggle:hover | --pf-v5-c-expandable-section__toggle--Color | #004080 | ||
--pf-v5-c-expandable-section__toggle--Color --pf-v5-c-expandable-section__toggle--hover--Color --pf-v5-global--link--Color--hover $pf-v5-global--link--Color--hover $pf-v5-global--primary-color--200 $pf-v5-color-blue-500 #004080 | ||||
.pf-v5-c-expandable-section__toggle:active | --pf-v5-c-expandable-section__toggle--Color | #004080 | ||
--pf-v5-c-expandable-section__toggle--Color --pf-v5-c-expandable-section__toggle--active--Color --pf-v5-global--link--Color--hover $pf-v5-global--link--Color--hover $pf-v5-global--primary-color--200 $pf-v5-color-blue-500 #004080 | ||||
.pf-v5-c-expandable-section__toggle:focus | --pf-v5-c-expandable-section__toggle--Color | #004080 | ||
--pf-v5-c-expandable-section__toggle--Color --pf-v5-c-expandable-section__toggle--focus--Color --pf-v5-global--link--Color--hover $pf-v5-global--link--Color--hover $pf-v5-global--primary-color--200 $pf-v5-color-blue-500 #004080 | ||||
.pf-v5-c-expandable-section__toggle-icon.pf-m-expand-top | --pf-v5-c-expandable-section__toggle-icon--Rotate | 0 | ||
--pf-v5-c-expandable-section__toggle-icon--Rotate --pf-v5-c-expandable-section__toggle-icon--m-expand-top--Rotate 0 |
View source on GitHub