| // |
| // Popovers |
| // -------------------------------------------------- |
| |
| .popover { |
| position: absolute; |
| top: 0; |
| left: 0; |
| z-index: $zindex-popover; |
| display: none; |
| max-width: $popover-max-width; |
| padding: 1px; |
| // Our parent element can be arbitrary since popovers 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: $font-size-base; |
| |
| background-color: $popover-bg; |
| background-clip: padding-box; |
| border: 1px solid $popover-fallback-border-color; |
| border: 1px solid $popover-border-color; |
| border-radius: $border-radius-large; |
| @include box-shadow(0 5px 10px rgba(0, 0, 0, .2)); |
| |
| // Offset the popover to account for the popover arrow |
| &.top { |
| margin-top: -$popover-arrow-width; |
| } |
| &.right { |
| margin-left: $popover-arrow-width; |
| } |
| &.bottom { |
| margin-top: $popover-arrow-width; |
| } |
| &.left { |
| margin-left: -$popover-arrow-width; |
| } |
| } |
| |
| .popover-title { |
| margin: 0; // reset heading margin |
| padding: 8px 14px; |
| font-size: $font-size-base; |
| background-color: $popover-title-bg; |
| border-bottom: 1px solid darken($popover-title-bg, 5%); |
| border-radius: ($border-radius-large - 1) ($border-radius-large - 1) 0 0; |
| } |
| |
| .popover-content { |
| padding: 9px 14px; |
| } |
| |
| // Arrows |
| // |
| // .arrow is outer, .arrow:after is inner |
| |
| .popover > .arrow { |
| &, |
| &:after { |
| position: absolute; |
| display: block; |
| width: 0; |
| height: 0; |
| border-color: transparent; |
| border-style: solid; |
| } |
| } |
| |
| .popover > .arrow { |
| border-width: $popover-arrow-outer-width; |
| } |
| |
| .popover > .arrow:after { |
| border-width: $popover-arrow-width; |
| content: ""; |
| } |
| |
| .popover { |
| &.top > .arrow { |
| left: 50%; |
| margin-left: -$popover-arrow-outer-width; |
| border-bottom-width: 0; |
| border-top-color: $popover-arrow-outer-fallback-color; // IE8 fallback |
| border-top-color: $popover-arrow-outer-color; |
| bottom: -$popover-arrow-outer-width; |
| &:after { |
| content: " "; |
| bottom: 1px; |
| margin-left: -$popover-arrow-width; |
| border-bottom-width: 0; |
| border-top-color: $popover-arrow-color; |
| } |
| } |
| &.right > .arrow { |
| top: 50%; |
| left: -$popover-arrow-outer-width; |
| margin-top: -$popover-arrow-outer-width; |
| border-left-width: 0; |
| border-right-color: $popover-arrow-outer-fallback-color; // IE8 fallback |
| border-right-color: $popover-arrow-outer-color; |
| &:after { |
| content: " "; |
| left: 1px; |
| bottom: -$popover-arrow-width; |
| border-left-width: 0; |
| border-right-color: $popover-arrow-color; |
| } |
| } |
| &.bottom > .arrow { |
| left: 50%; |
| margin-left: -$popover-arrow-outer-width; |
| border-top-width: 0; |
| border-bottom-color: $popover-arrow-outer-fallback-color; // IE8 fallback |
| border-bottom-color: $popover-arrow-outer-color; |
| top: -$popover-arrow-outer-width; |
| &:after { |
| content: " "; |
| top: 1px; |
| margin-left: -$popover-arrow-width; |
| border-top-width: 0; |
| border-bottom-color: $popover-arrow-color; |
| } |
| } |
| |
| &.left > .arrow { |
| top: 50%; |
| right: -$popover-arrow-outer-width; |
| margin-top: -$popover-arrow-outer-width; |
| border-right-width: 0; |
| border-left-color: $popover-arrow-outer-fallback-color; // IE8 fallback |
| border-left-color: $popover-arrow-outer-color; |
| &:after { |
| content: " "; |
| right: 1px; |
| border-right-width: 0; |
| border-left-color: $popover-arrow-color; |
| bottom: -$popover-arrow-width; |
| } |
| } |
| } |