0
0
mirror of https://github.com/twbs/bootstrap.git synced 2024-12-13 01:08:58 +01:00
Bootstrap/less/popovers.less
XhmikosR 37a2534c8e Go back to single colon pseudo elements.
This is for backwards compatibility with the browsers we support in v3.
2018-10-08 20:12:34 +03:00

131 lines
3.4 KiB
Plaintext

// stylelint-disable no-duplicate-selectors
//
// 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.
.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;
.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; }
// Arrows
// .arrow is outer, .arrow:after is inner
> .arrow {
border-width: @popover-arrow-outer-width;
&,
&:after {
position: absolute;
display: block;
width: 0;
height: 0;
border-color: transparent;
border-style: solid;
}
&:after {
content: "";
border-width: @popover-arrow-width;
}
}
}
.popover-title {
padding: 8px 14px;
margin: 0; // reset heading margin
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;
}
.popover {
&.top > .arrow {
bottom: -@popover-arrow-outer-width;
left: 50%;
margin-left: -@popover-arrow-outer-width;
border-top-color: @popover-arrow-outer-fallback-color; // IE8 fallback
border-top-color: @popover-arrow-outer-color;
border-bottom-width: 0;
&:after {
bottom: 1px;
margin-left: -@popover-arrow-width;
content: " ";
border-top-color: @popover-arrow-color;
border-bottom-width: 0;
}
}
&.right > .arrow {
top: 50%;
left: -@popover-arrow-outer-width;
margin-top: -@popover-arrow-outer-width;
border-right-color: @popover-arrow-outer-fallback-color; // IE8 fallback
border-right-color: @popover-arrow-outer-color;
border-left-width: 0;
&:after {
bottom: -@popover-arrow-width;
left: 1px;
content: " ";
border-right-color: @popover-arrow-color;
border-left-width: 0;
}
}
&.bottom > .arrow {
top: -@popover-arrow-outer-width;
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;
&:after {
top: 1px;
margin-left: -@popover-arrow-width;
content: " ";
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 {
right: 1px;
bottom: -@popover-arrow-width;
content: " ";
border-right-width: 0;
border-left-color: @popover-arrow-color;
}
}
}