| // Base class |
| .tooltip { |
| position: absolute; |
| z-index: $zindex-tooltip; |
| display: block; |
| margin: $tooltip-margin; |
| // 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. |
| @include reset-text(); |
| font-size: $tooltip-font-size; |
| // Allow breaking very long words so they don't overflow the tooltip's bounds |
| word-wrap: break-word; |
| opacity: 0; |
| |
| &.show { opacity: $tooltip-opacity; } |
| |
| .arrow { |
| position: absolute; |
| display: block; |
| width: $tooltip-arrow-width; |
| height: $tooltip-arrow-height; |
| |
| &::before { |
| position: absolute; |
| content: ""; |
| border-color: transparent; |
| border-style: solid; |
| } |
| } |
| } |
| |
| .bs-tooltip-top { |
| padding: $tooltip-arrow-height 0; |
| |
| .arrow { |
| bottom: 0; |
| |
| &::before { |
| top: 0; |
| border-width: $tooltip-arrow-height ($tooltip-arrow-width / 2) 0; |
| border-top-color: $tooltip-arrow-color; |
| } |
| } |
| } |
| |
| .bs-tooltip-right { |
| padding: 0 $tooltip-arrow-height; |
| |
| .arrow { |
| left: 0; |
| width: $tooltip-arrow-height; |
| height: $tooltip-arrow-width; |
| |
| &::before { |
| right: 0; |
| border-width: ($tooltip-arrow-width / 2) $tooltip-arrow-height ($tooltip-arrow-width / 2) 0; |
| border-right-color: $tooltip-arrow-color; |
| } |
| } |
| } |
| |
| .bs-tooltip-bottom { |
| padding: $tooltip-arrow-height 0; |
| |
| .arrow { |
| top: 0; |
| |
| &::before { |
| bottom: 0; |
| border-width: 0 ($tooltip-arrow-width / 2) $tooltip-arrow-height; |
| border-bottom-color: $tooltip-arrow-color; |
| } |
| } |
| } |
| |
| .bs-tooltip-left { |
| padding: 0 $tooltip-arrow-height; |
| |
| .arrow { |
| right: 0; |
| width: $tooltip-arrow-height; |
| height: $tooltip-arrow-width; |
| |
| &::before { |
| left: 0; |
| border-width: ($tooltip-arrow-width / 2) 0 ($tooltip-arrow-width / 2) $tooltip-arrow-height; |
| border-left-color: $tooltip-arrow-color; |
| } |
| } |
| } |
| |
| .bs-tooltip-auto { |
| &[x-placement^="top"] { |
| @extend .bs-tooltip-top; |
| } |
| &[x-placement^="right"] { |
| @extend .bs-tooltip-right; |
| } |
| &[x-placement^="bottom"] { |
| @extend .bs-tooltip-bottom; |
| } |
| &[x-placement^="left"] { |
| @extend .bs-tooltip-left; |
| } |
| } |
| |
| // Wrapper for the tooltip content |
| .tooltip-inner { |
| max-width: $tooltip-max-width; |
| padding: $tooltip-padding-y $tooltip-padding-x; |
| color: $tooltip-color; |
| text-align: center; |
| background-color: $tooltip-bg; |
| @include border-radius($tooltip-border-radius); |
| } |