Skip to Content
Patternfly Logo

Popover

Use a popover to display content in a new window that overlays the current page. Unlike a modal, a popover does not block the current page. By default clicking anywhere outside of the popover will dismiss it.

ExamplesDocumentationCSS Variables

Examples

Top

Bottom

Left

Without header/footer

Documentation

Overview

A popover is used to provide contextual information for another component on click. The popover itself is made up of two main elements: arrow and content. The content element follows the pattern of the popover box component, with a close icon in the top right corner, as well as a header and body. One of the directional modifiers (.pf-m-left, .pf-m-top, etc.) is required on the popover component

Accessibility

AttributeApplies toOutcome
role="dialog".pf-c-popoverIdentifies the element that serves as the popover container. Required
aria-labelledby="[id value of .pf-c-title]".pf-c-popoverGives the popover an accessible name by referring to the element that provides the dialog title. Required when .pf-c-title is present
aria-label="[title of popover]".pf-c-popoverGives the popover an accessible name. Required when .pf-c-title is not present
aria-describedby="[id value of applicable content]".pf-c-popoverGives the popover an accessible description by referring to the popover content that describes the primary message or purpose of the dialog. Not used if there is no static text that describes the popover.
aria-modal="true".pf-c-popoverTells assistive technologies that the windows underneath the current popover are not available for interaction. Required
aria-label="Close".pf-c-buttonProvides an accessible name for the close button as it uses an icon instead of text. Required
aria-hidden="true"Parent element containing the page contents when the popover is open.Hides main contents of the page from screen readers. The element with .pf-c-popover must not be a descendent of the element with aria-hidden="true". For more info see trapping focus. Required

Usage

ClassApplied toOutcome
.pf-c-popover<div>Creates a popover. Always use it with a modifier class that positions the popover relative to the element that triggered it. Required
.pf-c-popover__arrow<div>Creates an arrow pointing towards the element the popover describes. Required
.pf-c-popover__content<div>Creates the content area of the popover. Required
.pf-c-button<button>Positions the close icon in the top-right corner of the popover. Required
.pf-c-title<h1>,<h2>,<h3>,<h4>,<h5>,<h6>Initiates a title. Always use it with a modifier class. See title component for more info.
.pf-c-popover__body<div>The popover's body text. Required
.pf-c-popover__footer<footer>Initiates a popover footer.
.pf-m-left.pf-c-popoverPositions the popover to the left of the element.
.pf-m-right.pf-c-popoverPositions the popover to the right of the element.
.pf-m-top.pf-c-popoverPositions the popover to the top of the element.
.pf-m-bottom.pf-c-popoverPositions the popover to the bottom of the element.

CSS Variables

.pf-c-popover--pf-c-popover--FontSize
0.875rem
.pf-c-popover--pf-c-popover--MinWidth
calc(1rem + 1rem + 18.75rem)
.pf-c-popover--pf-c-popover--MaxWidth
calc(1rem + 1rem + 18.75rem)
.pf-c-popover--pf-c-popover--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-c-popover--pf-c-popover__content--BackgroundColor
#fff
.pf-c-popover--pf-c-popover__content--PaddingTop
1rem
.pf-c-popover--pf-c-popover__content--PaddingRight
1rem
.pf-c-popover--pf-c-popover__content--PaddingBottom
1rem
.pf-c-popover--pf-c-popover__content--PaddingLeft
1rem
.pf-c-popover--pf-c-popover__arrow--Width
1.5625rem
.pf-c-popover--pf-c-popover__arrow--Height
1.5625rem
.pf-c-popover--pf-c-popover__arrow--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-c-popover--pf-c-popover__arrow--BackgroundColor
#fff
.pf-c-popover--pf-c-popover__arrow--m-top--Transform
translate(-50%, 50%) rotate(45deg)
.pf-c-popover--pf-c-popover__arrow--m-right--Transform
translate(-50%, -50%) rotate(45deg)
.pf-c-popover--pf-c-popover__arrow--m-bottom--Transform
translate(-50%, -50%) rotate(45deg)
.pf-c-popover--pf-c-popover__arrow--m-left--Transform
translate(50%, -50%) rotate(45deg)
.pf-c-popover--pf-c-popover--c-button--MarginLeft
0.5rem
.pf-c-popover--pf-c-popover--c-button--Top
calc(1rem - 0.375rem)
.pf-c-popover--pf-c-popover--c-button--Right
1rem
.pf-c-popover--pf-c-popover--c-button--sibling--PaddingRight
3rem
.pf-c-popover--pf-c-popover--c-title--MarginBottom
0.5rem
.pf-c-popover--pf-c-popover__footer--MarginTop
1rem