aboutsummaryrefslogtreecommitdiffstats
path: root/alphabetlearning/static/bootstrap/scss/_popover.scss
diff options
context:
space:
mode:
Diffstat (limited to 'alphabetlearning/static/bootstrap/scss/_popover.scss')
-rw-r--r--alphabetlearning/static/bootstrap/scss/_popover.scss158
1 files changed, 158 insertions, 0 deletions
diff --git a/alphabetlearning/static/bootstrap/scss/_popover.scss b/alphabetlearning/static/bootstrap/scss/_popover.scss
new file mode 100644
index 0000000..3b8208e
--- /dev/null
+++ b/alphabetlearning/static/bootstrap/scss/_popover.scss
@@ -0,0 +1,158 @@
+.popover {
+ position: absolute;
+ top: 0;
+ left: 0 #{"/* rtl:ignore */"};
+ z-index: $zindex-popover;
+ display: block;
+ max-width: $popover-max-width;
+ // 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();
+ @include font-size($popover-font-size);
+ // Allow breaking very long words so they don't overflow the popover's bounds
+ word-wrap: break-word;
+ background-color: $popover-bg;
+ background-clip: padding-box;
+ border: $popover-border-width solid $popover-border-color;
+ @include border-radius($popover-border-radius);
+ @include box-shadow($popover-box-shadow);
+
+ .popover-arrow {
+ position: absolute;
+ display: block;
+ width: $popover-arrow-width;
+ height: $popover-arrow-height;
+
+ &::before,
+ &::after {
+ position: absolute;
+ display: block;
+ content: "";
+ border-color: transparent;
+ border-style: solid;
+ }
+ }
+}
+
+.bs-popover-top {
+ > .popover-arrow {
+ bottom: subtract(-$popover-arrow-height, $popover-border-width);
+
+ &::before {
+ bottom: 0;
+ border-width: $popover-arrow-height ($popover-arrow-width * .5) 0;
+ border-top-color: $popover-arrow-outer-color;
+ }
+
+ &::after {
+ bottom: $popover-border-width;
+ border-width: $popover-arrow-height ($popover-arrow-width * .5) 0;
+ border-top-color: $popover-arrow-color;
+ }
+ }
+}
+
+.bs-popover-end {
+ > .popover-arrow {
+ left: subtract(-$popover-arrow-height, $popover-border-width);
+ width: $popover-arrow-height;
+ height: $popover-arrow-width;
+
+ &::before {
+ left: 0;
+ border-width: ($popover-arrow-width * .5) $popover-arrow-height ($popover-arrow-width * .5) 0;
+ border-right-color: $popover-arrow-outer-color;
+ }
+
+ &::after {
+ left: $popover-border-width;
+ border-width: ($popover-arrow-width * .5) $popover-arrow-height ($popover-arrow-width * .5) 0;
+ border-right-color: $popover-arrow-color;
+ }
+ }
+}
+
+.bs-popover-bottom {
+ > .popover-arrow {
+ top: subtract(-$popover-arrow-height, $popover-border-width);
+
+ &::before {
+ top: 0;
+ border-width: 0 ($popover-arrow-width * .5) $popover-arrow-height ($popover-arrow-width * .5);
+ border-bottom-color: $popover-arrow-outer-color;
+ }
+
+ &::after {
+ top: $popover-border-width;
+ border-width: 0 ($popover-arrow-width * .5) $popover-arrow-height ($popover-arrow-width * .5);
+ border-bottom-color: $popover-arrow-color;
+ }
+ }
+
+ // This will remove the popover-header's border just below the arrow
+ .popover-header::before {
+ position: absolute;
+ top: 0;
+ left: 50%;
+ display: block;
+ width: $popover-arrow-width;
+ margin-left: -$popover-arrow-width * .5;
+ content: "";
+ border-bottom: $popover-border-width solid $popover-header-bg;
+ }
+}
+
+.bs-popover-start {
+ > .popover-arrow {
+ right: subtract(-$popover-arrow-height, $popover-border-width);
+ width: $popover-arrow-height;
+ height: $popover-arrow-width;
+
+ &::before {
+ right: 0;
+ border-width: ($popover-arrow-width * .5) 0 ($popover-arrow-width * .5) $popover-arrow-height;
+ border-left-color: $popover-arrow-outer-color;
+ }
+
+ &::after {
+ right: $popover-border-width;
+ border-width: ($popover-arrow-width * .5) 0 ($popover-arrow-width * .5) $popover-arrow-height;
+ border-left-color: $popover-arrow-color;
+ }
+ }
+}
+
+.bs-popover-auto {
+ &[data-popper-placement^="top"] {
+ @extend .bs-popover-top;
+ }
+ &[data-popper-placement^="right"] {
+ @extend .bs-popover-end;
+ }
+ &[data-popper-placement^="bottom"] {
+ @extend .bs-popover-bottom;
+ }
+ &[data-popper-placement^="left"] {
+ @extend .bs-popover-start;
+ }
+}
+
+// Offset the popover to account for the popover arrow
+.popover-header {
+ padding: $popover-header-padding-y $popover-header-padding-x;
+ margin-bottom: 0; // Reset the default from Reboot
+ @include font-size($font-size-base);
+ color: $popover-header-color;
+ background-color: $popover-header-bg;
+ border-bottom: $popover-border-width solid $popover-border-color;
+ @include border-top-radius($popover-inner-border-radius);
+
+ &:empty {
+ display: none;
+ }
+}
+
+.popover-body {
+ padding: $popover-body-padding-y $popover-body-padding-x;
+ color: $popover-body-color;
+}