--- title: Popout menu tags: interactivity,intermediate --- Reveals an interactive popout menu on hover and focus. - `position: relative` on the reference parent establishes a Cartesian positioning context for its child. - `position: absolute` takes the popout menu out of the flow of the document and positions it in relation to the parent. - `left: 100%` moves the the popout menu 100% of its parent's width from the left. - `visibility: hidden` hides the popout menu initially and allows for transitions (unlike `display: none`). - `.reference:hover > .popout-menu` means that when `.reference` is hovered over, select immediate children with a class of `.popout-menu` and change their `visibility` to `visible`, which shows the popout. - `.reference:focus > .popout-menu` means that when `.reference` is focused, the popout would be shown. - `.reference:focus-within > .popout-menu` ensures that the popout is shown when the focus is within the reference. ```html