// Tooltips // Base class .tooltip { position: absolute; z-index: @zindex-tooltip; display: block; // Our parent element can be arbitrary since tooltips are by default inserted as a sibling of their target element. // So reset our font and text properties to avoid inheriting weird values. .reset-text(); font-size: var(--font-size-small); opacity: 0; &.in { opacity: @tooltip-opacity; } &.top { margin-top: var(--minus-3px); padding: @tooltip-arrow-width 0; } &.right { margin-left: var(--3px); padding: 0 @tooltip-arrow-width; } &.bottom { margin-top: var(--3px); padding: @tooltip-arrow-width 0; } &.left { margin-left: var(--minus-3px); padding: 0 @tooltip-arrow-width; } transition: none; } // Wrapper for the tooltip content .tooltip-inner { max-width: var(--200px); padding: var(--3px) var(--8px); color: var(--tooltip-color); text-align: center; background-color: var(--tooltip-bg); border-radius: var(--border-radius-small); line-height: var(--line-height-small); } // Arrows .tooltip-arrow { position: absolute; width: 0; height: 0; border-color: transparent; border-style: solid; } // Note: Deprecated .top-left, .top-right, .bottom-left, and .bottom-right as of v3.3.1 .tooltip { &.top .tooltip-arrow { bottom: 0; left: 50%; margin-left: @tooltip-arrow-width-negative; border-width: @tooltip-arrow-width @tooltip-arrow-width 0; border-top-color: var(--tooltip-bg); } &.top-left .tooltip-arrow { bottom: 0; right: @tooltip-arrow-width; margin-bottom: @tooltip-arrow-width-negative; border-width: @tooltip-arrow-width @tooltip-arrow-width 0; border-top-color: var(--tooltip-bg); } &.top-right .tooltip-arrow { bottom: 0; left: @tooltip-arrow-width; margin-bottom: @tooltip-arrow-width-negative; border-width: @tooltip-arrow-width @tooltip-arrow-width 0; border-top-color: var(--tooltip-bg); } &.right .tooltip-arrow { top: 50%; left: 0; margin-top: @tooltip-arrow-width-negative; border-width: @tooltip-arrow-width @tooltip-arrow-width @tooltip-arrow-width 0; border-right-color: var(--tooltip-bg); } &.left .tooltip-arrow { top: 50%; right: 0; margin-top: @tooltip-arrow-width-negative; border-width: @tooltip-arrow-width 0 @tooltip-arrow-width @tooltip-arrow-width; border-left-color: var(--tooltip-bg); } &.bottom .tooltip-arrow { top: 0; left: 50%; margin-left: @tooltip-arrow-width-negative; border-width: 0 @tooltip-arrow-width @tooltip-arrow-width; border-bottom-color: var(--tooltip-bg); } &.bottom-left .tooltip-arrow { top: 0; right: @tooltip-arrow-width; margin-top: @tooltip-arrow-width-negative; border-width: 0 @tooltip-arrow-width @tooltip-arrow-width; border-bottom-color: var(--tooltip-bg); } &.bottom-right .tooltip-arrow { top: 0; left: @tooltip-arrow-width; margin-top: @tooltip-arrow-width-negative; border-width: 0 @tooltip-arrow-width @tooltip-arrow-width; border-bottom-color: var(--tooltip-bg); } }