This answer doesn't require that you know the what type of display (inline, etc.) the hideable element is supposed to be when being shown:
.hoverable:not(:hover) + .show-on-hover {
display: none;
}
Hover over me!
I'm a block element.
Hover over me also!
I'm an inline element.
This uses the adjacent sibling selector and the not selector.